HomeLập trìnhJavaScriptPhạm vi JavaScript...

Phạm vi JavaScript – Cách tạo một mảng số với .from() trong JS ES6


Các .from() phương thức là một phương thức tĩnh của Array đối tượng trong JavaScript ES6. Nó tạo ra một thể hiện Array mới, được sao chép nông từ một đối tượng giống như mảng hoặc có thể lặp lại như mapset.

Phương thức này trả về một mảng từ bất kỳ đối tượng nào có thuộc tính độ dài. Bạn có thể sử dụng nó để tạo một Mảng số trong một phạm vi được chỉ định.

Trong bài viết này, bạn sẽ tìm hiểu những gì .from() phương pháp tĩnh là tất cả về cách thức hoạt động và cách bạn có thể tạo một dãy số trong JavaScript.

Trong trường hợp bạn đang vội, đây là một phương pháp giúp bạn có được phạm vi:

const arrayRange = (start, stop, step) =>
    Array.from(
    { length: (stop - start) / step + 1 },
    (value, index) => start + index * step
    );

console.log(arrayRange(1, 5, 1)); // [1,2,3,4,5]

Bạn có thể tiếp tục đọc bài viết ngắn này để hiểu cách thức hoạt động của nó.

Như thế nào .from() Phương thức hoạt động trong JavaScript

Các Array.from() phương thức trả về một mảng từ bất kỳ đối tượng giống như mảng hoặc có thể lặp lại nào. Phương thức nhận một tham số bắt buộc và hai tham số tùy chọn khác:

// Syntax
Array.from(arraylike, mapFunc, thisArg)
  • arraylike – Một đối tượng giống như mảng hoặc có thể lặp lại để chuyển đổi thành một mảng.
  • mapFunc – Đây là một tham số tùy chọn. Hàm Map được gọi trên mỗi phần tử.
  • thisArg – Giá trị này được sử dụng khi thực thi mapFunc như this. Nó cũng là tùy chọn.
Đọc thêm  Các kiểu dữ liệu JavaScript: Giải thích về Typeof

Để xem nó hoạt động như thế nào, hãy tạo một mảng từ một chuỗi bằng cách sử dụng Array.from() phương pháp:

let newArray = Array.from("freeCodeCamp");

console.log(newArray); // ["f","r","e","e","C","o","d","e","C","a","m","p"]

Trong ví dụ trên, các Array.from() phương thức trả về một mảng của chuỗi. Bạn cũng có thể sử dụng phương thức này để trả về một mảng từ bất kỳ đối tượng nào có thuộc tính độ dài chỉ định số phần tử trong đối tượng.

let arrayLike = {0: 1, 1: 2, 2: 3, length: 3};
let newArray = Array.from(arrayLike);

console.log(newArray); // [1,2,3]

Bạn cũng có thể giới thiệu chức năng bản đồ được gọi cho từng phần tử. Ví dụ: nếu bạn muốn thao tác từng mục mảng bằng cách nhân từng mục với một số cụ thể:

let arrayLike = {0: 1, 1: 2, 2: 3, length: 3};
let newArray = Array.from(arrayLike, x => x * 2);

console.log(newArray); // [2,4,6]

Ghi chú: .from() là một phương thức tĩnh, đó là lý do tại sao nó sử dụng Array tên lớp. Bạn chỉ có thể sử dụng nó như Array.from() và không myArray.from()ở đâu myArray là một mảng. Nó sẽ trả về không xác định.

Cách tạo một dãy số bằng .from() Phương pháp

Các Array.from() phương thức giúp bạn có thể tạo một dãy số bằng hàm map:

let newArray = Array.from({ length: 7 }, (value, index) => index);

console.log(newArray); // [0,1,2,3,4,5,6]

Phương thức trên tạo ra một mảng gồm 7 phần tử được khởi tạo mặc định với undefined. Nhưng khi sử dụng chức năng bản đồ, giá trị chỉ mục hiện được sử dụng thay vì giá trị thực của nó là không xác định.

Đọc thêm  10 Thư Viện JavaScript Tuyệt Vời Bạn Nên Dùng Thử Trong Năm 2021

Nếu bạn sử dụng giá trị thực của nó, bạn sẽ nhận được một mảng gồm 7 phần tử (dựa trên độ dài) với giá trị không xác định:

let newArray = Array.from({ length: 7 }, (value, index) => value);

console.log(newArray); 
// returns [undefined,undefined,undefined,undefined,undefined,undefined,undefined]

Cách tạo một dãy số với .from Phương pháp

Bây giờ bạn đã biết cách tạo một mảng với một dãy số. Nhưng khi bạn tạo một phạm vi, bạn muốn những số này bắt đầu từ một giá trị đã chỉ định và kết thúc ở một giá trị đã chỉ định. Ví dụ: các số trong phạm vi 4 và 8 sẽ là 4, 5, 6, 7, 8.

Bạn cũng có thể chỉ định nếu bạn muốn một mảng số lẻ hoặc số chẵn trong một phạm vi đã chỉ định. Tất cả những điều này có thể đạt được với Array.from() phương pháp.

const arrayRange = (start, stop, step) =>
    Array.from(
    { length: (stop - start) / step + 1 },
    (value, index) => start + index * step
    );

Trong đoạn mã trên, độ dài của đối tượng giống như mảng được xác định bằng cách lấy số đầu tiên trong dãy trừ đi số cuối cùng và chia cho bước cộng với một. Điều này sẽ đưa ra số lượng phần tử chính xác trong mảng.

Trong hàm bản đồ, số bắt đầu được thêm vào chỉ mục của từng phần tử (hãy nhớ rằng giá trị luôn không được xác định) và nhân với giá trị bước. Hàm bản đồ này chạy cho từng phần tử và giúp tính toán giá trị của từng phần tử.

Đọc thêm  Cách chèn mã JavaScript để thao tác trang web một cách tự động

Hãy thử phương pháp với một vài ví dụ:

// Generate numbers between range 2 and 7
let range = arrayRange(2, 7, 1);
console.log(range); // [2,3,4,5,6,7]

// Generate even numbers between range 2 and 7
let evenRange = arrayRange(2, 7, 2);
console.log(evenRange); // [2,4,6]

// Generate odd numbers between range 1 and 5
let oddRange = arrayRange(1, 5, 2);
console.log(oddRange); // [1,3,5]

kết thúc

Trong bài viết này, bạn đã học cách tạo một mảng số bằng Array.from() phương pháp. Bạn cũng đã học được cách Array.from() phương pháp hoạt động.

Hãy nhớ rằng có các tùy chọn khác để tạo dãy số trong JavaScript – chúng tôi chỉ tập trung vào .from() trong hướng dẫn này.

Hãy mã hóa vui vẻ!



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status