假设我有一个JSON对象,如:
var objDBandIDs = {"vcFirstName":"enFN"
,"vcSurName":"enSN"
,"vcSex":["rdoM", "rdoF"]
,"intEmployed":"enEmp"
,"vcAddress":"enADR"};
在JavaScript中,我可以使用迭代这个对象
for( var strKey in objDBandIDs ) {
var rightSide = objDBandIDs[strKey];
...
}
其中strKey是标签,例如vcFirstName,右侧为enFN。
有没有一种方法可以创建一个循环,而不是用左边作为迭代器,用右边来迭代JSON?
不能将值用作键,因为与键不同,值可能不是唯一的。
您可以通过循环Object.values
:的结果来循环仅值
for (const value of Object.values(objDBandIDs)) {
// ...
}
实例:
const objDBandIDs = {
"vcFirstName": "enFN",
"vcSurName": "enSN",
"vcSex": ["rdoM", "rdoF"],
"intEmployed": "enEmp",
"vcAddress": "enADR"
};
for (const value of Object.values(objDBandIDs)) {
console.log(value);
}
或者,您可以使用Object.entries
:的结果循环通过这两个
for (const [key, value] of Object.entries(objDBandIDs)) {
// ...
}
实例:
const objDBandIDs = {
"vcFirstName": "enFN",
"vcSurName": "enSN",
"vcSex": ["rdoM", "rdoF"],
"intEmployed": "enEmp",
"vcAddress": "enADR"
};
for (const [key, value] of Object.entries(objDBandIDs)) {
console.log(key, value);
}
在这两种情况下,都没有来使用for..of
循环,您可以使用任何数组循环机制(有关选项,请参阅此处的答案(。