javascript - 如何从对象中删除字段
问题描述
我有一个对象数组。为了做一个操作,我需要从这个对象中删除几个字段,而对于其他一些操作,我必须使用整个字段
但是这两个数组都删除了“正则表达式”字段。我在这里做错了什么?
var newob = {};
var myObject = {
"ircEvent": "PRIVMSG",
"method": "newURI",
"regex": "^http://.*"
};
newob = JSON.stringify(myObject);
delete newob.regex;
console.log("Test1", newob);
console.log("Test2", myObject);
解决方案
您丢失了JSON.parse
,因此您可以创建对象。否则,您正在尝试delete
a 的属性regex
,string
该属性不存在。
newob = JSON.parse(JSON.stringify(myObject));
JSON.stringify
创建一个字符串,您需要JSON.parse
从 JSON 字符串创建一个对象。
对于该对象,您可以使用它,Object.assign({}, myObject)
因为它是一个浅克隆。
newob = Object.assign({}, myObject);
// newobj = { ...myObject } // this will also work
推荐阅读
- sql - 我很想在 Windows 上的 PSQL 上使用 \i
- reactjs - 将 React 脚本从 1.x 升级到 3.x 会破坏 sass 变量(字体真棒)
- c - 具有可变数量参数的 C 函数在使用较少数量的参数调用时返回意外输出
- python - 如何用指定列表的索引替换数组的所有项目?
- informatica - 如何在过滤器转换中不处于条件?
- arrays - 在 Matlab 中从 n 个向量创建所有可能的 n 元组,以特定方式排序
- javascript - 回调地狱和重构
- maven - Maven:项目副本的命名
- javascript - jQuery自定义视频控件拒绝共存
- django - 不提供静态文件,但可以直接访问。Django,码头工人,nginx