JavaScript数组和理解arr[arr.length]



arr[arr.length]是什么意思?我的意思是它真正的意思或它真正的作用,我无法理解它是如何工作的逻辑。有人能解释一下吗?

arr.length表示从索引0到索引arr.length - 1的数组长度。

例如,如果你得到arr = ["a", "b", "c"],arr.length就是3

arr[0]"a",arr[1]"b",arr[2]"c"

arr[3]不存在,yet。但如果你做arr[arr.length] = "d",你会得到["a", "b", "c", "d"]

这是一个奇怪的结构,通常,人们应该简单地写arr.push("d")

const arr = ["a", "b", "c"];
console.log(arr.length, arr[0], arr[1], arr[2], arr[3]);
arr[arr.length] = "d";
console.log(arr);
arr.push("e");
console.log(arr);

该语句获取数组最后一个索引的索引加1。它用于向数组追加项。相当于array.push().

var fruits = ["apple", "orange", "banana", "pear"];
// appends grapes to the array
fruits[fruits.length] = "grapes";
console.log(fruits);

要进一步阅读,请查看MDN的数组方法页面。

arr.length是数组的长度。

arr[arr.length]正在通过索引访问数组长度(越界,因为长度从1开始,而不是索引0)。

的例子:

const test = [1,2,3]
test[test.length]
undefined
test[test.length-1]
3

它只是请求数组的特定索引,用例:向数组添加新元素的方式不是很优雅,如:

arr[arr.length] = newVal
arr.push(newVal)
arr = [...arr, newVal]

相关内容

  • 没有找到相关文章

最新更新