如何更新二维数组中的单个元素?JavaScript示例疑问解析
二维数组替换null的问题解答
正确的替换方式
直接通过索引赋值是最简洁高效的方法:
airplaneSeats[3][1] = 'Hugo'
你的splice写法错误的原因
你写的airplaneSeats.splice([3][1], 1, 'Hugo')有两个核心问题:
- 调用对象错误:
splice应该调用在你要修改的子数组上,也就是airplaneSeats[3](第四个元素的子数组),而不是外层的airplaneSeats数组。 - 参数错误:
[3][1]这个写法会被解析成先创建数组[3],再取它的索引1元素,结果是undefined。你相当于给splice传了undefined作为起始位置,这完全不符合你的需求。
如果非要用splice,正确写法应该是:
airplaneSeats[3].splice(1, 1, 'Hugo')
它表示在airplaneSeats[3]这个子数组的索引1位置,删除1个元素,再插入'Hugo',效果和直接赋值一致,但没必要多此一举。
直接赋值如何替换null
直接赋值并不是“移除”null,而是覆盖该索引位置的原有值。数组的每个索引位置都对应一个值,当你给airplaneSeats[3][1]重新赋值时,原来的null会被新值'Hugo'直接替换,这个位置就不再保留null了,完全达到你想要的修改效果。
内容的提问来源于stack exchange,提问作者Osamu Midoriya
相关产品推荐
相关产品推荐

