首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >与javascript array.splice()混淆

与javascript array.splice()混淆
EN

Stack Overflow用户
提问于 2011-09-23 00:06:09
回答 4查看 12.2K关注 0票数 15

我对此真的很困惑。

我的理解是,array.splice(startIndex, deleteLength, insertThing)会将insertThing插入到startIndexsplice()结果中,并删除deleteLength的条目价值?…所以:

代码语言:javascript
运行
复制
var a = [1,2,3,4,5];
var b = a.splice(1, 0, 'foo');
console.log(b);

应该会给我:

代码语言:javascript
运行
复制
[1,'foo',2,3,4,5]

代码语言:javascript
运行
复制
console.log([1,2,3,4,5].splice(2, 0, 'foo'));

应该会给我

代码语言:javascript
运行
复制
[1,2,'foo',3,4,5]

等。

但是由于某种原因,它只给了我一个空数组?看一下:http://jsfiddle.net/trolleymusic/STmbp/3/

谢谢:)

EN

Stack Overflow用户

发布于 2011-09-23 00:10:10

array.splice函数拼接一个数组,返回被删除的元素。由于您没有删除任何内容,而只是使用它来插入一个元素,因此它将返回空数组。

我想这就是你想要的。

代码语言:javascript
运行
复制
var a = [1,2,3,4,5]; 
a.splice(1, 0, 'foo'); 
var b = a;
console.log(b); 
票数 4
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7517937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档