我有一个对象,我循环使用for循环,循环遍历对象以找到键和值。
house: {
john: {
love_off: "mary"
}
}
我的for循环返回:
for ( var key in house.john) {
house.john[key.replace("_off","") = house.john[key];
}
它返回原始数组的副本,长度为:
house: {
john: {
love: "mary"
love_off: "mary"
}
}
如何从对象中获取"love": "mary"
并将其添加到需要返回的数组中?
答案 0 :(得分:1)
您必须使用delete
语句才能删除旧属性。
删除操作符从对象中删除属性。
var object={
"house": {
"john": {
"love_off": "mary"
}
}
}
for ( var key in object.house.john) {
object.house.john[key.replace("_off","")] = object.house.john[key];
if(object.house.john.hasOwnProperty(key))
delete object.house.john[key];
}
console.log(object);
答案 1 :(得分:1)
如果正确解释问题,您可以使用JSON.stringify()
,JSON.parse()
.replace()
data = JSON.parse(JSON.stringify(data).replace(/_off(?=":)/, ""));
答案 2 :(得分:0)
试试这个
var myArray= []
for ( var key in object.house.john) {
object.house.john[key.replace("_off","")] = object.house.john[key];
delete object.house.john[key];
myArray.push(object.house.john);
}
答案 3 :(得分:0)