![](/img/trans.png)
[英]How to access a key using the dot operator on an object in which the key begins with :_ in javascript?
[英]How to access properties of object by dot operator in Javascript
var changeJsonKeyName, newObj, obj;
changeJsonKeyName = function(json, oldName, newName) {
json[newName] = json[oldName];
delete json[oldName];
// json.newName = json.oldName;
// delete json.oldName;
// if i use point in this ,i can not get my result that i want
return json;
};
obj = {
'aaa': '1111',
'bb': {
'cc': 333
}
};
newObj = {};
newObj = changeJsonKeyName(obj, 'aaa', 'nnn');
console.log(newObj);
如果我在这里使用point,我无法得到我想要的结果,出了什么问题,请帮助我,非常感谢。
我不确定我是否正确理解您,但是:
json[newName]
以newName变量的值命名的访问属性
json.newName
访问名为“ newName”的属性,该属性不存在
首先,正如评论所指出的,这是一个Javascript问题,而不是JSON问题。
但是您似乎在问为什么这样做:
json[newName] = json[oldName];
delete json[oldName];
但这不是:
json.newName. = json.oldName.;
delete json.oldName;
才不是。
答案是第二种形式实际上等效于
json["newName"] = json["oldName"];
delete json["oldName"];
换句话说,您要处理的名称是常量“ oldName”和“ newName”的属性,而不是将名称作为参数传递给该方法的属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.