Javascript 循环一个JS对象
我有一个JS对象:Javascript 循环一个JS对象,javascript,object,loops,Javascript,Object,Loops,我有一个JS对象: { "data": { "nid": [{ "cid": "32", "uid": "780", "comment": "text" }] }, "request_status": "found" } 如何循环这些项目以获取注释值(“注释”:“文本”)?您实际上不需要循环来获取注释值。只要做 var obj = {"data":{"nid":[{"
{
"data": {
"nid": [{
"cid": "32",
"uid": "780",
"comment": "text"
}]
},
"request_status": "found"
}
如何循环这些项目以获取注释值(“注释”:“文本”)?您实际上不需要循环来获取注释值。只要做
var obj = {"data":{"nid":[{"cid":"32","uid":"780","comment":"text"}]},"request_status":"found"};
var text = obj.data.nid[0].comment;
或者,如果有多个,您可以使用
forEach
obj.data.nid.forEach(function(val,i) {
alert( val.comment );
});
var arr = obj.data.nid.map(function(val,i) {
return val.comment;
});
或者传统的循环
for( var i = 0; i < obj.data.nid.length; i++ ) {
alert( obj.data.nid[i].comment );
}
var arr = []
for( var i = 0; i < obj.data.nid.length; i++ ) {
arr.push( obj.data.nid[i].comment );
}
还是传统的for
循环
for( var i = 0; i < obj.data.nid.length; i++ ) {
alert( obj.data.nid[i].comment );
}
var arr = []
for( var i = 0; i < obj.data.nid.length; i++ ) {
arr.push( obj.data.nid[i].comment );
}
var arr=[]
对于(变量i=0;i
您实际上不需要循环来获取它。只要做
var obj = {"data":{"nid":[{"cid":"32","uid":"780","comment":"text"}]},"request_status":"found"};
var text = obj.data.nid[0].comment;
或者,如果有多个,您可以使用forEach
obj.data.nid.forEach(function(val,i) {
alert( val.comment );
});
var arr = obj.data.nid.map(function(val,i) {
return val.comment;
});
或者传统的循环
for( var i = 0; i < obj.data.nid.length; i++ ) {
alert( obj.data.nid[i].comment );
}
var arr = []
for( var i = 0; i < obj.data.nid.length; i++ ) {
arr.push( obj.data.nid[i].comment );
}
还是传统的for
循环
for( var i = 0; i < obj.data.nid.length; i++ ) {
alert( obj.data.nid[i].comment );
}
var arr = []
for( var i = 0; i < obj.data.nid.length; i++ ) {
arr.push( obj.data.nid[i].comment );
}
var arr=[]
对于(变量i=0;i
如果您只是引用该特定对象(或者如果您使用的每个对象都遵循相同的模式),那么您可以直接访问该值:
var theObj = {"data":{"nid":[{"cid":"32","uid":"780","comment":"text"}]},"request_status":"found"};
alert(theObj.data.nid[0].comment);
如果您想做一些迭代的事情,那么不妨尝试以下方法:
var theObj = {"data":{"nid":[{"cid":"32","uid":"780","comment":"text"}]},"request_status":"found"};
for (var index = 0; index < theObj.data.nid.length; index++) {
var item = theObj.data.nid[index];
if (item.comment) {
alert(item.comment);
}
}
var theObj={“data”:{“nid”:[{“cid”:“32”,“uid”:“780”,“comment”:“text”}]},“request_status”:“found”};
对于(var index=0;index
或者,如果您真的希望以迭代方式完成整个过程:
window.searchObj = function(theObj) {
if (theObj.comment) {
alert(theObj.comment);
}
if (theObj instanceof Array) {
searchArray (theObj);
}
else if (theObj instanceof Object) {
for (var key in theObj) {
searchObj(theObj[key]);
}
}
};
window.searchArray = function(theArray) {
for (var index = 0; index < theArray.length; index++) {
var item = theArray[index];
searchObj(item);
}
};
var theObj = {"data":{"nid":[{"cid":"32","uid":"780","comment":"text"}]},"request_status":"found"};
searchObj(theObj);
window.searchObj=函数(theObj){
如果(theObj.comment){
警惕(theObj.comment);
}
if(数组的对象实例){
搜索阵列(theObj);
}
else if(对象的对象实例){
for(theObj中的var键){
searchObj(theObj[key]);
}
}
};
window.searchArray=函数(数组){
对于(var index=0;index
如果您只是引用该特定对象(或者如果您使用的每个对象都遵循相同的模式),那么您可以直接访问该值:
var theObj = {"data":{"nid":[{"cid":"32","uid":"780","comment":"text"}]},"request_status":"found"};
alert(theObj.data.nid[0].comment);
如果您想做一些迭代的事情,那么不妨尝试以下方法:
var theObj = {"data":{"nid":[{"cid":"32","uid":"780","comment":"text"}]},"request_status":"found"};
for (var index = 0; index < theObj.data.nid.length; index++) {
var item = theObj.data.nid[index];
if (item.comment) {
alert(item.comment);
}
}
var theObj={“data”:{“nid”:[{“cid”:“32”,“uid”:“780”,“comment”:“text”}]},“request_status”:“found”};
对于(var index=0;index
或者,如果您真的希望以迭代方式完成整个过程:
window.searchObj = function(theObj) {
if (theObj.comment) {
alert(theObj.comment);
}
if (theObj instanceof Array) {
searchArray (theObj);
}
else if (theObj instanceof Object) {
for (var key in theObj) {
searchObj(theObj[key]);
}
}
};
window.searchArray = function(theArray) {
for (var index = 0; index < theArray.length; index++) {
var item = theArray[index];
searchObj(item);
}
};
var theObj = {"data":{"nid":[{"cid":"32","uid":"780","comment":"text"}]},"request_status":"found"};
searchObj(theObj);
window.searchObj=函数(theObj){
如果(theObj.comment){
警惕(theObj.comment);
}
if(数组的对象实例){
搜索阵列(theObj);
}
else if(对象的对象实例){
for(theObj中的var键){
searchObj(theObj[key]);
}
}
};
window.searchArray=函数(数组){
对于(var index=0;index
给定:
var obj = {
"data": {
"nid": [{
"cid": "32",
"uid": "780",
"comment": "text"
}]
},
"request_status": "found"
};
检索注释的直接方法是:
obj["data"]["nid"][0]["comment"]
// or
obj.data.nid[0].comment
至于通过项目“循环”来获取值,我不确定循环有什么意义。你是说你可能不知道对象的结构,但你知道它会在某个地方有一个“注释”字段吗
“nid”数组中只有一项-如果这只是一个示例,但实际上您将拥有一个包含更多值的数组,您可以在该数组中循环:
var nid = obj["data"]["nid"], // get a direct reference to the array to save
i; // repeating obj.data.nid everywhere
for (i=0; i < nid.length; i++) {
// do something with the comment in the current item
console.log(nid[i]["comment"]);
}
var nid=obj[“data”][“nid”],//获取要保存的数组的直接引用
i、 //到处重复obj.data.nid
对于(i=0;i
给定:
var obj = {
"data": {
"nid": [{
"cid": "32",
"uid": "780",
"comment": "text"
}]
},
"request_status": "found"
};
检索注释的直接方法是:
obj["data"]["nid"][0]["comment"]
// or
obj.data.nid[0].comment
至于通过项目“循环”来获取值,我不确定循环有什么意义。你是说你可能不知道对象的结构,但你知道它会在某个地方有一个“注释”字段吗
“nid”数组中只有一项-如果这只是一个示例,但实际上您将拥有一个包含更多值的数组,您可以在该数组中循环:
var nid = obj["data"]["nid"], // get a direct reference to the array to save
i; // repeating obj.data.nid everywhere
for (i=0; i < nid.length; i++) {
// do something with the comment in the current item
console.log(nid[i]["comment"]);
}
var nid=obj[“data”][“nid”],//获取要保存的数组的直接引用
i、 //到处重复obj.data.nid
对于(i=0;i
为什么要循环它?您可以使用类似于object.data.nid[0]的内容直接获取它。注释为什么要循环它?您可以使用类似于object.data.nid[0]的内容直接获取它。注释谢谢,但是如果nid更改为number?{“data”:{“1222”:[{“cid”:“32”,“uid”:“780”,“comment”:“text”}]},“request_status”:“found”}@Laky:然后将obj.data.nid
更改为obj.data[1222]
。或者你是说它可能是一个不同的数字,或者一组几个数字?谢谢,但如果nid改成数字?{“data”:{“1222”:[{“cid”:“32”,“uid”:“780”,“comment”:“text”}]},“request_status”:“found”}@Laky:然后将obj.data.nid
更改为obj.data[1222]
。或者你是说它可能是一个不同的数字,或者是一组几个数字?