考虑到一个对象:
let myObject = {
"ircEvent": "PRIVMSG",
"method": "newURI",
"regex": "^http://.*"
};
如何删除财产 regex 以完成下一个 myObject?
let myObject = {
"ircEvent": "PRIVMSG",
"method": "newURI"
};
考虑到一个对象:
let myObject = {
"ircEvent": "PRIVMSG",
"method": "newURI",
"regex": "^http://.*"
};
如何删除财产 regex 以完成下一个 myObject?
let myObject = {
"ircEvent": "PRIVMSG",
"method": "newURI"
};
当前回答
使用 ramda#dissoc 您将获得一个新的对象,而无需属性 regex:
const newObject = R.dissoc('regex', myObject);
// newObject !== myObject
你也可以使用其他功能来实现相同的效果 - 忽略,选择,...
其他回答
短答
var obj = {
data: 1,
anotherData: 'sample'
}
delete obj.data //this removes data from the obj
你被留在
var obj = {
anotherData: 'sample'
}
删除对象的两种方式
使用为... 在函数中删除用户(键) { const newUsers = {}; for (const uid in users) { if (uid!== key) { newUsers[uid] = users[uid]; } return newUsers }
或
delete users[key]
我个人使用 Underscore.js 或 Lodash 用于对象和序列操作:
myObject = _.omit(myObject, 'regex');
在JavaScript中,有2种常见方法可以从对象中删除属性。
第一個可轉換的方法是使用 delete object.property 運營商。
第二种方法是不可改变的,因为它不改变原始对象,是引用对象破坏和传播合成: const {财产,...rest} = 对象。
下面是ES6如何轻松地删除输入:
让 myObject = { “ircEvent”: “PRIVMSG”, “method”: “newURI”, “regex”: “^http://.*” }; const removeItem = “regex”; const { [removeItem]: remove,...rest } = myObject; console.log(remove); // “^http://.*” console.log(rest); // Object { ircEvent: “PRIVMSG”, 方法: “newURI” }