Javascript 如何获取键值对的索引
我必须更改第三个位置的钥匙名称。 信息我只有新的密钥名称和位置 差不多Javascript 如何获取键值对的索引,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我必须更改第三个位置的钥匙名称。 信息我只有新的密钥名称和位置 差不多 var myObj={ age: null, anothercolumn: null, caseNum: null, casecount: null, casecountfgfg: null, city: null, country: null, county: null } 请建议
var myObj={
age: null,
anothercolumn: null,
caseNum: null,
casecount: null,
casecountfgfg: null,
city: null,
country: null,
county: null
}
请建议小心点!在ES2015之前,未指定属性键的顺序。所以它只是可以改变,不同的浏览器不同
所以你不能做你想做的事
唯一可能的方法是创建一个新对象,并按所需顺序应用关键帧。我建议不要依赖对象键的顺序 如@Lux所述,在
ES2015
之前,未指定属性键的顺序。所以它只是可以改变,不同的浏览器不同。但是,解决方法是循环对象并获取键值信息,查看要替换的键,然后循环对象,替换要替换的键,如下所示:
myObj[2] = 'new value'
var myObject=[{“苹果”:“1”},{“球”:“3”},{“猫”:“wer”},{“尼泊尔”:“美丽”},{“猫”:“wer”}]//模拟对象
for(myObject中的var键){
if(myObject.hasOwnProperty(键)){
log(“Key:+Key+”,值:+JSON.stringify(myObject[Key]);
}
}
//如果我想更换所有cat钥匙,则:
对于(变量i=0;i
PLUNKER:问题在于:默认情况下,关联数组在每个浏览器中的顺序并不相同。在更改键之前,请始终确保按字母顺序对键进行排序,因为在某些浏览器中可能会出现意外情况。@Tushar OP想更改键的名称。还有,您不能保证对象键的索引。@blex:因此,我需要的不是位置,而是要修改哪个键的信息,对吗?用例是什么?你能添加完整的代码解释你想做什么吗?我现在有关键信息,为我添加新的和删除旧的作品。谢谢
var myObject =[{"apple":"1"},{"ball":"3"},{"cat":"wer"},{"Nepal":"beautiful"},{"cat":"wer"}];//mock object
for (var key in myObject) {
if (myObject.hasOwnProperty(key)) {
console.log("Key: " + key + ", Value: " + JSON.stringify(myObject[key]));
}
}
//if i want to replace all the cat key, then:
for (var i = 0; i < myObject.length; i++) {
myObject[i].catReplaced = myObject[i]['cat'];
delete myObject[i].cat;
}