首页 前端知识 js删除json数据中指定元素

js删除json数据中指定元素

2024-02-08 15:02:36 前端知识 前端哥 826 330 我要收藏

 delete 删除数组方法:

function removeJSONRows() {
	var tab = {
		"dataRows": [
			{"id": 1,"name": "使用部门"},
			{"id": 2,"name": "车辆走行路线"},
			{"id": 3,"name": "使用类别"}
		]
	}
	
	var rs = tab['dataRows'];
	for (var i in rs) {
		if (rs[i]['id'] === 2) {
			// delete 方法仅将数组中元素删除,数组空间位置还保留着,因此,删除后的数组长度依然为3。
			delete rs[i];
		}
	}

	console.log(rs);
	console.log(JSON.stringify(rs), rs.length);
}

----------------------------------------------------------------------------------------------------------------------

splice 删除数组方法:

function removeJSONRows() {
	var tab = {
		"dataRows": [
			{"id": 1,"name": "使用部门"},
			{"id": 2,"name": "车辆走行路线"},
			{"id": 3,"name": "使用类别"}
		]
	}
	
	var rs = tab['dataRows'];
	for (var i in rs) {
		if (rs[i]['id'] === 2) {
			// splice 方法将数组中元素彻底删除,删除后的数组长度为2。
			rs.splice(i,1);
		}
	}

	console.log(rs);
	console.log(JSON.stringify(rs), rs.length);
}

----------------------------------------------------------------------------------------------------------------------

filter 方法删除数组元素

function removeJSONRows() {
	var tab = {
		"dataRows": [
			{"id": 1,"name": "使用部门"},
			{"id": 2,"name": "车辆走行路线"},
			{"id": 3,"name": "使用类别"}
		]
	}
	
	// filter 删除等价于 splice 方法,彻底将元素从数组中清除掉。
	var rs = tab['dataRows'].filter((rows) => rows['id'] != 2);

	console.log(rs);
	console.log(JSON.stringify(rs), rs.length);
}

转载请注明出处或者链接地址:https://www.qianduange.cn//article/1514.html
标签
json
评论
会员中心 联系我 留言建议 回顶部
复制成功!