根据http://www.hunlock.com/blogs/Mastering_Javascript_Arrays,这是我一直用作拼接数组的参考,
// Insert without deleting.
myArray=[1,2,3,4,5,6,7,8,9,10];
newArray = myArray.splice(5,0, '*');
newArray = myArray.splice(4,0, '*');
document.writeln(myArray); // outputs: 1,2,3,4,*,5,*,6,7,8,9,10
但是,在我的代码中,我有:
var myArray=[1,2,3,4,5,6,7,8,9,10];
var newArray = myArray.splice(5,0, '*');
console.log(newArray);
输出是 []
此外,我注意到 myArray 似乎随着 .splice 调用而改变,即使它被分配给 newArray。
1)这是Firefox的错误吗?2) 有没有更好的方法来创建一个添加了 1 个元素的新数组?
提前致谢!
编辑:刚刚注意到我在控制台记录了一些与示例不同的东西......我的问题的第二部分仍然适用 - 我最近的尝试是:
var ints = [91, 44, 67, 80, 91, 52, 68, 50, 50, 32];
var weights = ints;
console.log(weights);
weights = weights.splice(1, 0, 'hey');
console.log(weights);
最终结果仍然是 []