js里面的push和splice用法如下:
语法如下:
arrayObject.splice(index,howmany,item1,.....,itemX)
参数 描述
index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX 可选。向数组添加的新项目。
返回值
类型 描述
Array 包含被删除项目的新数组,如果有的话。
说明
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
push:用来增加数组元素的。
splice:可以用来增加元素、删除元素。
示例如下:
①push添加数组元素
var clients = [];
clients.push({ "id": 1, "ws": 'ws1', "name": 'name1' });
clients.push({ "id": 2, "ws": 'ws2', "name": 'name2' });
clients.push({ "id": 3, "ws": 'ws3', "name": 'name3' });
clients.push({ "id": 4, "ws": 'ws4', "name": 'name4' });
clients.push({ "id": 5, "ws": 'ws5', "name": 'name5' });
for (var i = 0; i < clients.length; i++)
{
alert(clients[i].id);
}
分别输出1,2,3,4,5
②splice添加数组元素
var clients = [];
clients.push({ "id": 1, "ws": 'ws1', "name": 'name1' });
clients.push({ "id": 2, "ws": 'ws2', "name": 'name2' });
clients.push({ "id": 3, "ws": 'ws3', "name": 'name3' });
clients.push({ "id": 4, "ws": 'ws4', "name": 'name4' });
clients.push({ "id": 5, "ws": 'ws5', "name": 'name5' });
clients.splice(1,0,{ "id": 6, "ws": 'ws6', "name": 'name6' });
//上述这一行代码,在1位置插入新元素,元素内容为:{ "id": 6, "ws": 'ws6', "name": 'name6' }
for (var i = 0; i < clients.length; i++)
{
alert(clients[i].id);
}
分别输出:1,6,2,3,4,5 ③splice删除数组元素
var clients = [];
clients.push({ "id": 1, "ws": 'ws1', "name": 'name1' });
clients.push({ "id": 2, "ws": 'ws2', "name": 'name2' });
clients.push({ "id": 3, "ws": 'ws3', "name": 'name3' });
clients.push({ "id": 4, "ws": 'ws4', "name": 'name4' });
clients.push({ "id": 5, "ws": 'ws5', "name": 'name5' });
clients.splice(1,1);
for (var i = 0; i < clients.length; i++)
{
alert(clients[i].id);
}
分别输出:1,3,4,5 知识拓展:
splice的用法请注意:该函数有多个可选参数。
比如:clients.splice(1,1);此句有两个参数,第一个1是指定位置,第二个1代表要删除一个元素,该句的意思就是说,在1位置删除1个元素。
请注意,如果上面的代码变成:clients.splice(1,0);,注意哦,第二个参数是0,说明不删除元素。该句的意思是在1位置,删除0个元素。
最后,还有如下的情况。如果变成下面的语句。
clients.splice(1,0,{ "id": 6, "ws": 'ws6', "name": 'name6' });第一个参数是1,代表位置。第二个参数是0,代表在1位置不删除任何元素,但是,后面还有{ "id": 6, "ws": 'ws6', "name": 'name6' },语句就变成,在1位置删除0个元素之后,再插入新元素{ "id": 6, "ws": 'ws6', "name": 'name6' },等同于在1位置后面插入{ "id": 6, "ws": 'ws6', "name": 'name6' }元素。
上面的例子估计难了点,下面看简单的语句。
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
arr.splice(2,1,"William")
document.write(arr)
输出如下结果:
George,John,Thomas,James,Adrew,Martin
George,John,William,James,Adrew,Martin