js 对象 数组 删除
程序员文章站
2022-04-10 17:10:21
...
一.对象的删除:可以直接用delete进行删除,也可以将其赋值为undefined;
例如:
var goods_info={ "000":{barcode:"000", type: '饮料', name: '可口可乐', price: '3', unit: '瓶'}, "001":{barcode:"001", type: '饮料', name: '雪碧', price: '3', unit: '瓶'}, "002":{barcode:"002", type: '水果', name: '苹果', price: '5.5', unit: '斤'}, "003":{barcode:"003", type: '水果', name: '荔枝', price: '15', unit: '斤'}, "004":{barcode:"004", type: '生活用品', name: '电池', price: '2', unit: '个'}, "005":{barcode:"005", type: '食品', name: '方便面', price: '4.5', unit: '袋'} }; delete goods_info["000"]; goods_info["001"]=undefined; console.log(JSON.stringify(goods_info));
他们都分别实现了删除对象里面的键和值。
这两种方法的差别是:delete是直接删除的,而undefined是把键的值变为空,来进行删除的。
二.数组的删除。要是删除数组里面的元素就必须知道其想对应元素的下标。知道了下标之后可以通过splice(i,j)方法进行删除。
1.splice(i,j):i代表要删除的元素的索引号(从0开始),j代表删除元素的个数。其数组的长度会变化,相对应的索引号也会变化。
例如:
var id=['001','002','003']; id.splice(1,1) console.log(JSON.stringify(id));//['001','003'] var id=['001','002','003']; id.splice(1,2) console.log(JSON.stringify(id));//['001']
2.delete:这种方式数组长度不变,此时删除的元素变为null了,但是也有好处原来数组的索引也保持不变。
var id=['001','002','003']; delete id[0]; console.log(JSON.stringify(id));// [null,"002","003"]
至于这两种方法什么时候用就看,各位的需求了。
上一篇: SVN备份
下一篇: Tomcat解压版配置说明