我正在寻找一种JavaScript数组插入方法,其格式为:
arr.insert(index, item)
Run Code Online (Sandbox Code Playgroud)
最好是在jQuery中,但任何JavaScript实现都会在这一点上完成.
说,我有一个看起来像这样的数组:
var playlist = [
{artist:"Herbie Hancock", title:"Thrust"},
{artist:"Lalo Schifrin", title:"Shifting Gears"},
{artist:"Faze-O", title:"Riding High"}
];
Run Code Online (Sandbox Code Playgroud)
如何将元素移动到另一个位置?
我想举例,{artist:"Lalo Schifrin", title:"Shifting Gears"}到最后.
我尝试使用splice,如下所示:
var tmp = playlist.splice(2,1);
playlist.splice(2,0,tmp);
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
在另一个数组中插入数组的更有效方法是什么.
a1 = [1,2,3,4,5];
a2 = [21,22];
newArray - a1.insertAt(2,a2) -> [1,2, 21,22, 3,4,5];
Run Code Online (Sandbox Code Playgroud)
如果a2数组很大,从性能的角度来看,使用splice迭代a2看起来有点糟糕.
谢谢.
我知道JavaScript函数可以接受"任意"数量的参数.
function f(){};
f(1,2,3,4 /*...*/);
Run Code Online (Sandbox Code Playgroud)
但我想知道实际上有多少"任何"可以限制?
比如说,让我说一百万个参数f().那会有用吗?或者翻译龙骨?
我猜测最大值是(a)特定于实现或(b)(2^32)-1,因为arguments对象是类似数组的.
我没有在语言规范中看到这一点,但我可能没有连接一些点.
我有2个数组:
var str = ['a','b','c','d'];
var num = [1,2,3];
Run Code Online (Sandbox Code Playgroud)
我想要一个像这样的数组:
var strNum= ['a','b',1,2,3,'c','d'];
Run Code Online (Sandbox Code Playgroud)
有方法吗?