Hướng dẫn assign value to array index javascript - gán giá trị cho chỉ mục mảng javascript

  • " Trước
  • Tiếp theo "

Chương này giới thiệu các bộ sưu tập dữ liệu được đặt hàng theo giá trị chỉ mục. Điều này bao gồm các mảng và các cấu trúc giống như mảng như các đối tượng

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
2 và các đối tượng
const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
3.

Một mảng là một danh sách các giá trị được đặt hàng mà bạn đề cập đến với một tên và một chỉ mục.

Ví dụ, hãy xem xét một mảng có tên

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
4, trong đó có tên của nhân viên được lập chỉ mục bởi số nhân viên số của họ. Vì vậy,
const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
5 sẽ là số nhân viên số 0,
const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
6 nhân viên số một, v.v.

JavaScript không có kiểu dữ liệu mảng rõ ràng. Tuy nhiên, bạn có thể sử dụng đối tượng

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
2 được xác định trước và các phương thức của nó để hoạt động với các mảng trong các ứng dụng của bạn. Đối tượng
const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
2 có các phương pháp để thao tác các mảng theo nhiều cách khác nhau, chẳng hạn như tham gia, đảo ngược và sắp xếp chúng. Nó có một thuộc tính để xác định độ dài mảng và các thuộc tính khác để sử dụng với các biểu thức thông thường.

Chúng tôi sẽ tập trung vào các mảng trong bài viết này, nhưng nhiều khái niệm tương tự cũng áp dụng cho các mảng được đánh máy, vì các mảng và mảng được đánh máy chia sẻ nhiều phương pháp tương tự. Để biết thêm thông tin về các mảng được đánh máy, xem tham chiếu mảng đánh máy.

Tạo một mảng

Các câu sau đây tạo ra các mảng tương đương:

const arr1 = new Array(element0, element1, /* … ,*/ elementN);
const arr2 = Array(element0, element1, /* … ,*/ elementN);
const arr3 = [element0, element1, /* … ,*/ elementN];

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
9 là danh sách các giá trị cho các phần tử của mảng. Khi các giá trị này được chỉ định, mảng được khởi tạo với chúng dưới dạng các phần tử của mảng. Thuộc tính
const myArray = ['Wind', 'Rain', 'Fire'];
0 của mảng được đặt thành số lượng đối số.

Cú pháp khung được gọi là "Array theo nghĩa đen" hoặc "Bộ khởi tạo mảng". Nó ngắn hơn các hình thức tạo mảng khác, và do đó thường được ưa thích. Xem văn bản mảng để biết chi tiết.

Để tạo một mảng có độ dài khác không, nhưng không có bất kỳ mục nào, có thể sử dụng một trong hai mục sau:

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;

Lưu ý: Trong mã trên,

const myArray = ['Wind', 'Rain', 'Fire'];
1 phải là
const myArray = ['Wind', 'Rain', 'Fire'];
2. Mặt khác, một mảng có một phần tử duy nhất (giá trị được cung cấp) sẽ được tạo. Gọi
const myArray = ['Wind', 'Rain', 'Fire'];
3 sẽ trả về
const myArray = ['Wind', 'Rain', 'Fire'];
1, nhưng mảng không chứa bất kỳ phần tử nào. Vòng lặp
const myArray = ['Wind', 'Rain', 'Fire'];
5 sẽ không tìm thấy bất kỳ thuộc tính nào trên mảng.
In the above code,
const myArray = ['Wind', 'Rain', 'Fire'];
1 must be a
const myArray = ['Wind', 'Rain', 'Fire'];
2. Otherwise, an array with a single element (the provided value) will be created. Calling
const myArray = ['Wind', 'Rain', 'Fire'];
3 will return
const myArray = ['Wind', 'Rain', 'Fire'];
1, but the array doesn't contain any elements. A
const myArray = ['Wind', 'Rain', 'Fire'];
5 loop will not find any property on the array.

Ngoài một biến mới được xác định như được hiển thị ở trên, các mảng cũng có thể được gán như một thuộc tính của một đối tượng mới hoặc hiện có:

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };

Nếu bạn muốn khởi tạo một mảng với một phần tử duy nhất và phần tử xảy ra là

const myArray = ['Wind', 'Rain', 'Fire'];
2, bạn phải sử dụng cú pháp khung. Khi một giá trị
const myArray = ['Wind', 'Rain', 'Fire'];
2 được chuyển đến hàm tạo hoặc hàm
const myArray = ['Wind', 'Rain', 'Fire'];
8, nó được hiểu là
const myArray = ['Wind', 'Rain', 'Fire'];
1, không phải là một phần tử duy nhất.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;

Gọi

const arr = ['one', 'two', 'three'];
arr[2]          // three
arr['length']   // 3
0 dẫn đến
const arr = ['one', 'two', 'three'];
arr[2]          // three
arr['length']   // 3
1, nếu
const arr = ['one', 'two', 'three'];
arr[2]          // three
arr['length']   // 3
2 là một số không phải là một số có phần phân số không khác. Ví dụ sau đây minh họa hành vi này.

const arr = Array(9.3); // RangeError: Invalid array length

Nếu mã của bạn cần tạo các mảng với các yếu tố duy nhất của một loại dữ liệu tùy ý, sẽ an toàn hơn khi sử dụng các chữ cái mảng. Ngoài ra, tạo một mảng trống trước khi thêm phần tử duy nhất vào nó.

Bạn cũng có thể sử dụng phương thức tĩnh

const arr = ['one', 'two', 'three'];
arr[2]          // three
arr['length']   // 3
3 để tạo các mảng có phần tử đơn.

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3

Đề cập đến các yếu tố mảng

Bởi vì các yếu tố cũng là thuộc tính, bạn có thể truy cập chúng bằng cách sử dụng Trình truy cập thuộc tính. Giả sử bạn xác định mảng sau:

const myArray = ['Wind', 'Rain', 'Fire'];

Bạn có thể tham khảo phần tử đầu tiên của mảng là

const arr = ['one', 'two', 'three'];
arr[2]          // three
arr['length']   // 3
4, phần tử thứ hai của mảng là
const arr = ['one', 'two', 'three'];
arr[2]          // three
arr['length']   // 3
5, v.v ... Chỉ số của các phần tử bắt đầu bằng 0.

Lưu ý: Bạn cũng có thể sử dụng Trình truy cập thuộc tính để truy cập các thuộc tính khác của mảng, như với một đối tượng. You can also use property accessors to access other properties of the array, like with an object.

const arr = ['one', 'two', 'three'];
arr[2]          // three
arr['length']   // 3

Điền một mảng

Bạn có thể điền một mảng bằng cách gán các giá trị cho các phần tử của nó. Ví dụ:

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';

Lưu ý: Nếu bạn cung cấp giá trị không số nguyên cho toán tử mảng trong mã ở trên, một thuộc tính sẽ được tạo trong đối tượng đại diện cho mảng, thay vì một phần tử mảng. If you supply a non-integer value to the array operator in the code above, a property will be created in the object representing the array, instead of an array element.

const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true

Bạn cũng có thể điền một mảng khi bạn tạo nó:

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
0

Hiểu chiều dài

Ở cấp độ triển khai, các mảng của JavaScript thực sự lưu trữ các yếu tố của chúng dưới dạng thuộc tính đối tượng tiêu chuẩn, sử dụng chỉ mục mảng làm tên thuộc tính.

Tài sản

const myArray = ['Wind', 'Rain', 'Fire'];
0 là đặc biệt. Giá trị của nó luôn luôn là một số nguyên dương lớn hơn chỉ số của phần tử cuối cùng nếu có tồn tại. .

Hãy nhớ rằng, các chỉ mục mảng JavaScript dựa trên 0: chúng bắt đầu tại

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
1, không phải
const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
2. Điều này có nghĩa là thuộc tính
const myArray = ['Wind', 'Rain', 'Fire'];
0 sẽ nhiều hơn một chỉ số cao nhất được lưu trữ trong mảng:

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
1

Bạn cũng có thể gán cho thuộc tính

const myArray = ['Wind', 'Rain', 'Fire'];
0.

Viết một giá trị ngắn hơn số lượng các mục được lưu trữ cắt ngắn mảng. Viết

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
1 hoàn toàn làm trống nó:

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
2

Lặp lại trên các mảng

Một hoạt động chung là lặp lại các giá trị của một mảng, xử lý từng cái theo một cách nào đó. Cách đơn giản nhất để làm điều này như sau:

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
3

Nếu bạn biết rằng không có yếu tố nào trong mảng của bạn đánh giá

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
6 trong bối cảnh boolean, nếu mảng của bạn chỉ bao gồm các nút dom, ví dụ như bạn có thể sử dụng thành ngữ hiệu quả hơn:

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
4

Điều này tránh được chi phí kiểm tra độ dài của mảng và đảm bảo rằng biến

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
7 được gán lại cho mục hiện tại mỗi lần xung quanh vòng lặp để tăng thêm sự thuận tiện.

Phương pháp

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
8 cung cấp một cách khác để lặp qua một mảng:

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
5

Hàm được chuyển đến

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
9 được thực thi một lần cho mọi mục trong mảng, với mục mảng được truyền làm đối số cho hàm. Các giá trị không được chỉ định không được lặp lại trong vòng lặp
const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
9.

Lưu ý rằng các phần tử của một mảng bị bỏ qua khi mảng được xác định không được liệt kê khi lặp lại bởi

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
9, nhưng được liệt kê khi
const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
2 được gán thủ công cho phần tử:

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
6

Do các phần tử mảng JavaScript được lưu dưới dạng các thuộc tính đối tượng tiêu chuẩn, nên không nên lặp lại thông qua các mảng JavaScript bằng cách sử dụng các vòng

const myArray = ['Wind', 'Rain', 'Fire'];
5, bởi vì các phần tử bình thường và tất cả các thuộc tính có thể suy định sẽ được liệt kê.

Phương pháp mảng

Đối tượng

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
2 có các phương thức sau:

Phương thức

const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
5 tham gia hai hoặc nhiều mảng và trả về một mảng mới.

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
7

Phương thức

const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
6 tham gia tất cả các phần tử của một mảng thành một chuỗi.

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
8

Phương thức

const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
7 thêm một hoặc nhiều phần tử vào cuối một mảng và trả về kết quả
const myArray = ['Wind', 'Rain', 'Fire'];
0 của mảng.

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
9

Phương thức

const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
9 loại bỏ phần tử cuối cùng khỏi một mảng và trả về phần tử đó.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
0

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
00 loại bỏ phần tử đầu tiên khỏi một mảng và trả về phần tử đó.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
1

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
01 thêm một hoặc nhiều phần tử vào mặt trước của một mảng và trả về độ dài mới của mảng.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
2

Phương pháp

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
02 trích xuất một phần của một mảng và trả về một mảng mới.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
3

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
03 trả về phần tử tại chỉ mục được chỉ định trong mảng hoặc
const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
2 nếu chỉ mục nằm ngoài phạm vi. Nó đáng chú ý được sử dụng cho các chỉ số tiêu cực là các yếu tố truy cập từ cuối mảng.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
4

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
05 loại bỏ các phần tử khỏi một mảng và (tùy chọn) thay thế chúng. Nó trả về các mục đã được xóa khỏi mảng.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
5

Phương pháp

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
06 chuyển các phần tử của một mảng, tại chỗ: phần tử mảng đầu tiên trở thành loại cuối cùng và cuối cùng trở thành loại đầu tiên. Nó trả về một tham chiếu đến mảng.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
6

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
07 trả về một mảng mới với tất cả các phần tử mảng con được nối với nó đệ quy lên độ sâu được chỉ định.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
7

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
08 sắp xếp các phần tử của một mảng tại chỗ và trả về một tham chiếu đến mảng.

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
8

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
08 cũng có thể lấy chức năng gọi lại để xác định cách so sánh các phần tử mảng. Hàm gọi lại được gọi với hai đối số, là hai giá trị từ mảng. Hàm so sánh hai giá trị này và trả về một số dương, số âm hoặc 0, chỉ ra thứ tự của hai giá trị. Chẳng hạn, những điều sau đây sẽ sắp xếp mảng theo chữ cái cuối cùng của một chuỗi:

const obj = {};
// …
obj.prop = [element0, element1, /* … ,*/ elementN];

// OR
const obj = { prop: [element0, element1, /* … ,*/ elementN] };
9

  • Nếu
    // This...
    const arr1 = new Array(arrayLength);
    
    // ...results in the same array as this
    const arr2 = Array(arrayLength);
    
    // This has exactly the same effect
    const arr3 = [];
    arr3.length = arrayLength;
    
    10 nhỏ hơn
    // This...
    const arr1 = new Array(arrayLength);
    
    // ...results in the same array as this
    const arr2 = Array(arrayLength);
    
    // This has exactly the same effect
    const arr3 = [];
    arr3.length = arrayLength;
    
    11 bởi hệ thống sắp xếp, hãy trả về
    // This...
    const arr1 = new Array(arrayLength);
    
    // ...results in the same array as this
    const arr2 = Array(arrayLength);
    
    // This has exactly the same effect
    const arr3 = [];
    arr3.length = arrayLength;
    
    12 (hoặc bất kỳ số âm nào)
  • Nếu
    // This...
    const arr1 = new Array(arrayLength);
    
    // ...results in the same array as this
    const arr2 = Array(arrayLength);
    
    // This has exactly the same effect
    const arr3 = [];
    arr3.length = arrayLength;
    
    10 lớn hơn
    // This...
    const arr1 = new Array(arrayLength);
    
    // ...results in the same array as this
    const arr2 = Array(arrayLength);
    
    // This has exactly the same effect
    const arr3 = [];
    arr3.length = arrayLength;
    
    11 bởi hệ thống sắp xếp, hãy trả về
    const emp = [];
    emp[0] = 'Casey Jones';
    emp[1] = 'Phil Lesh';
    emp[2] = 'August West';
    
    2 (hoặc bất kỳ số dương nào)
  • Nếu
    // This...
    const arr1 = new Array(arrayLength);
    
    // ...results in the same array as this
    const arr2 = Array(arrayLength);
    
    // This has exactly the same effect
    const arr3 = [];
    arr3.length = arrayLength;
    
    10 và
    // This...
    const arr1 = new Array(arrayLength);
    
    // ...results in the same array as this
    const arr2 = Array(arrayLength);
    
    // This has exactly the same effect
    const arr3 = [];
    arr3.length = arrayLength;
    
    11 được coi là tương đương, hãy trả về
    const emp = [];
    emp[0] = 'Casey Jones';
    emp[1] = 'Phil Lesh';
    emp[2] = 'August West';
    
    1.

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
19 tìm kiếm mảng cho
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
20 và trả về chỉ mục của trận đấu đầu tiên.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
0

Phương pháp

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
21 hoạt động như
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
22, nhưng bắt đầu ở cuối và tìm kiếm ngược.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
1

Phương thức

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
8 thực thi
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 trên mỗi mục mảng và trả về
const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
2.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
2

Phương pháp

const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
9 (và các phương pháp khác dưới đây) thực hiện một cuộc gọi lại được gọi là các phương pháp lặp, bởi vì chúng lặp lại toàn bộ mảng trong một số thời trang. Mỗi người lấy một đối số thứ hai tùy chọn gọi là
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
27. Nếu được cung cấp,
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
27 trở thành giá trị của từ khóa
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
29 bên trong phần thân của hàm gọi lại. Nếu không được cung cấp, như với các trường hợp khác trong đó một hàm được gọi bên ngoài bối cảnh đối tượng rõ ràng,
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
29 sẽ đề cập đến đối tượng toàn cầu (
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
31,
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
32, v.v.) khi hàm không nghiêm ngặt hoặc
const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
2 khi hàm là nghiêm ngặt.

Lưu ý: Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
08 được giới thiệu ở trên không phải là phương thức lặp, bởi vì hàm gọi lại của nó chỉ được sử dụng để so sánh và có thể không được gọi theo bất kỳ thứ tự cụ thể nào dựa trên thứ tự phần tử.
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
08 cũng không chấp nhận tham số
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
27.
The
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
08 method introduced above is not an iterative method, because its callback function is only used for comparison and may not be called in any particular order based on element order.
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
08 does not accept the
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
27 parameter either.

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
37 trả về một mảng mới của giá trị trả về từ thực thi
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 trên mỗi mục mảng.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
3

Phương pháp

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
39 chạy
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
37 theo sau là
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
07 của độ sâu 1.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
4

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
42 trả về một mảng mới chứa các mục mà
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 đã trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
5

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
45 trả về mục đầu tiên mà
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 đã trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
6

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
48 trả về mục cuối cùng mà
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 đã trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
7

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
51 trả về chỉ mục của mục đầu tiên mà
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 đã trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
8

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
54 trả về chỉ mục của mục cuối cùng mà
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 đã trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44.

// This creates an array with only one element: the number 42.
const arr = [42];

// This creates an array with no elements and arr.length set to 42.
const arr = Array(42);

// This is equivalent to:
const arr = [];
arr.length = 42;
9

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
57 trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44 nếu
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44 cho mỗi mục trong mảng.

const arr = Array(9.3); // RangeError: Invalid array length
0

Phương thức

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
61 trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44 nếu
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 trả về
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
44 cho ít nhất một mục trong mảng.

const arr = Array(9.3); // RangeError: Invalid array length
1

Phương pháp

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
65 áp dụng
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
66 cho mỗi giá trị trong mảng cho mục đích giảm danh sách các mục xuống một giá trị duy nhất. Hàm
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
67 trả về giá trị cuối cùng được trả về bởi hàm
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24.

Nếu

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
69 được chỉ định, thì
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 được gọi với
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
69 là giá trị tham số đầu tiên và giá trị của mục thứ nhất trong mảng làm giá trị tham số thứ hai.

Nếu

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
69 không được chỉ định, thì hai giá trị tham số đầu tiên của ____ 124 sẽ là phần tử thứ nhất và thứ hai của mảng. Trên mỗi cuộc gọi tiếp theo, giá trị của tham số đầu tiên sẽ là bất cứ điều gì
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 được trả về trong cuộc gọi trước đó và giá trị của tham số thứ hai sẽ là giá trị tiếp theo trong mảng.

Nếu

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
24 cần truy cập vào chỉ mục của mục được xử lý hoặc truy cập vào toàn bộ mảng, chúng có sẵn dưới dạng các tham số tùy chọn.

const arr = Array(9.3); // RangeError: Invalid array length
2

Phương pháp

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
76 hoạt động như
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
65, nhưng bắt đầu với phần tử cuối cùng.

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
67 và
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
79 là ít rõ ràng nhất trong các phương pháp mảng lặp. Chúng nên được sử dụng cho các thuật toán kết hợp hai giá trị đệ quy để giảm trình tự xuống một giá trị duy nhất.

Mảng thưa thớt

Các mảng có thể chứa "các khe trống", không giống như các khe chứa đầy giá trị

const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
2. Các khe trống có thể được tạo theo một trong những cách sau:

const arr = Array(9.3); // RangeError: Invalid array length
3

Trong một số hoạt động, các khe trống cư xử như thể chúng được lấp đầy với

const arr = [];
arr[3.4] = 'Oranges';
console.log(arr.length); // 0
console.log(Object.hasOwn(arr, 3.4)); // true
2.

const arr = Array(9.3); // RangeError: Invalid array length
4

Nhưng ở những người khác (đáng chú ý nhất là các phương thức lặp mảng), các khe trống được bỏ qua.

const arr = Array(9.3); // RangeError: Invalid array length
5

Để biết danh sách đầy đủ về cách các phương thức mảng hoạt động với các mảng thưa thớt, hãy xem trang tham chiếu

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
2.

Mảng đa chiều

Các mảng có thể được lồng, có nghĩa là một mảng có thể chứa một mảng khác như một phần tử. Sử dụng đặc tính này của các mảng JavaScript, các mảng đa chiều có thể được tạo ra.

Mã sau đây tạo ra một mảng hai chiều.

const arr = Array(9.3); // RangeError: Invalid array length
6

Ví dụ này tạo ra một mảng với các hàng sau:

const arr = Array(9.3); // RangeError: Invalid array length
7

Sử dụng các mảng để lưu trữ các thuộc tính khác

Mảng cũng có thể được sử dụng như các đối tượng, để lưu trữ thông tin liên quan.

const arr = Array(9.3); // RangeError: Invalid array length
8

Ví dụ: khi một mảng là kết quả của sự phù hợp giữa biểu thức chính quy và chuỗi, mảng trả về các thuộc tính và các phần tử cung cấp thông tin về trận đấu. Một mảng là giá trị trả về của

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
83,
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
84 và
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
85. Để biết thông tin về việc sử dụng các mảng có biểu thức thông thường, hãy xem các biểu thức chính quy.

Làm việc với các đối tượng giống như mảng

Một số đối tượng JavaScript, chẳng hạn như

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
86 được trả về bởi
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
87 hoặc đối tượng
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
88 được cung cấp trong phần thân của chức năng, nhìn và cư xử như các mảng trên bề mặt nhưng không chia sẻ tất cả các phương pháp của chúng. Đối tượng
// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
88 cung cấp thuộc tính
const myArray = ['Wind', 'Rain', 'Fire'];
0 nhưng không thực hiện các phương thức mảng như
const emp = [];
emp[0] = 'Casey Jones';
emp[1] = 'Phil Lesh';
emp[2] = 'August West';
8.

Các phương thức mảng không thể được gọi trực tiếp trên các đối tượng giống như mảng.

const arr = Array(9.3); // RangeError: Invalid array length
9

Nhưng bạn có thể gọi chúng là gián tiếp bằng cách sử dụng

// This...
const arr1 = new Array(arrayLength);

// ...results in the same array as this
const arr2 = Array(arrayLength);

// This has exactly the same effect
const arr3 = [];
arr3.length = arrayLength;
92.

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
0

Các phương thức nguyên mẫu mảng cũng có thể được sử dụng trên các chuỗi, vì chúng cung cấp quyền truy cập tuần tự vào các ký tự của chúng theo cách tương tự với mảng:

const wisenArray = Array.of(9.3); // wisenArray contains only one element 9.3
1

  • " Trước
  • Tiếp theo "

Bạn có thể lập chỉ mục một mảng javascript không?

Các mảng có các chỉ mục được đặt tên được gọi là mảng liên kết (hoặc băm). JavaScript không hỗ trợ các mảng với các chỉ mục được đặt tên. Trong JavaScript, các mảng luôn sử dụng các chỉ mục được đánh số.JavaScript does not support arrays with named indexes. In JavaScript, arrays always use numbered indexes.

Làm thế nào bạn có thể chèn một phần tử tại một chỉ mục cụ thể trong một mảng trong JavaScript?

Nhưng bạn có thể tự hỏi làm thế nào để thêm một phần tử vào một vị trí cụ thể trong một mảng.Vâng, bạn có thể làm điều đó với phương thức splice ().Phương thức splice () là một phương thức mục đích chung để thay đổi nội dung của một mảng bằng cách loại bỏ, thay thế hoặc thêm các phần tử vào các vị trí được chỉ định của mảng.with the splice() method. The splice() method is a general-purpose method for changing the contents of an array by removing, replacing, or adding elements in specified positions of the array.

Làm thế nào bạn có thể thêm một phần tử mới ở chỉ mục 0 của một mảng?

Bạn muốn thêm nó một cách rõ ràng tại một nơi cụ thể của mảng.Nơi đó được gọi là chỉ số.Các chỉ mục mảng bắt đầu từ 0, vì vậy nếu bạn muốn thêm mục trước, bạn sẽ sử dụng INDEX 0, ở vị trí thứ hai, chỉ mục là 1, v.v.Để thực hiện thao tác này, bạn sẽ sử dụng phương thức splice () của một mảng.use the splice() method of an array.

Làm thế nào bạn có thể thay thế một phần tử ở một chỉ mục cụ thể trong một mảng?

Một mục có thể được thay thế trong một mảng bằng hai cách tiếp cận:..
Phương pháp 1: Sử dụng phương thức splice ().....
Phương pháp 2: Sử dụng phương thức mảng mảng () và bộ lọc () ..