js 数组中使用 push 报错

文章目录

问题

在这里插入图片描述

  • 代码如下,但报错如上,请分析上述代码错误原因
let arr = [[160, 20], [179, 10], [-170, -20]];
let temp = arr.unshift([1,1]);
let tt = temp.push([0,0])

console.log(tt); // 输出新生成的数组

分析

这段代码有几个错误:

  • unshift 方法返回的是修改后的数组的长度,而不是修改后的数组本身。因此,将 arr.unshift([1,1]) 的返回值赋值给 temp 是错误的。

  • push 方法返回的是修改后的数组的长度,而不是修改后的数组本身。因此,将 temp.push([0,0]) 的返回值赋值给 tt 是错误的。

  • 在 console.log(tt) 中,你试图输出变量 tt,但是 tt 并没有被定义,因为之前的赋值操作是错误的。

  • 修正后的代码如下:

let arr = [[160, 20], [179, 10], [-170, -20]];
arr.unshift([1, 1]);
arr.push([0, 0]);

console.log(arr); // 输出新生成的数组

这样,我们直接对数组 arr 进行了修改,并在最后使用 console.log 打印出新生成的数组。

猜你喜欢

转载自blog.csdn.net/qq_53810245/article/details/134516127