如何在json(javascript)中使用变量作为对象 var text='{“nusers”:['+ “{”姓“:”约翰“,”姓“:”多伊“},”+ “{”姓“:”安娜“,”姓“:”史密斯“},”+ “{”firstName:“sadsf”,“lastName:“sdasda”},”+ “{”firstName:“fnSaleh”,“lastName:“lnSaleh”}]}”; var va=“用户”; obj=JSON.parse(文本); 对于(i=0;i

如何在json(javascript)中使用变量作为对象 var text='{“nusers”:['+ “{”姓“:”约翰“,”姓“:”多伊“},”+ “{”姓“:”安娜“,”姓“:”史密斯“},”+ “{”firstName:“sadsf”,“lastName:“sdasda”},”+ “{”firstName:“fnSaleh”,“lastName:“lnSaleh”}]}”; var va=“用户”; obj=JSON.parse(文本); 对于(i=0;i,javascript,Javascript,错误 “未捕获类型错误:无法读取未定义的属性'length'”您有几个问题 对于初学者,变量属性名称使用[]符号。然后固定va的值以匹配对象属性nusers而不是user。最后,使用indexi访问循环中的数组元素 var text='{“nusers”:['+ “{”姓“:”约翰“,”姓“:”多伊“},”+ “{”姓“:”安娜“,”姓“:”史密斯“},”+ “{”firstName:“sadsf”,“lastName:“sdasda”},”+ “{”firstName:“fnSaleh”,“

错误


“未捕获类型错误:无法读取未定义的属性'length'”

您有几个问题

对于初学者,变量属性名称使用
[]
符号。然后固定
va
的值以匹配对象属性
nusers
而不是
user
。最后,使用index
i
访问循环中的数组元素

var text='{“nusers”:['+
“{”姓“:”约翰“,”姓“:”多伊“},”+
“{”姓“:”安娜“,”姓“:”史密斯“},”+
“{”firstName:“sadsf”,“lastName:“sdasda”},”+
“{”firstName:“fnSaleh”,“lastName:“lnSaleh”}]}”;
var va=“nusers”;
obj=JSON.parse(文本);
对于(i=0;i<(obj[va].长度);i++){
var st=obj[va][i]。名字;
控制台日志(st);

}
您有几个问题

对于初学者,变量属性名称使用
[]
符号。然后固定
va
的值以匹配对象属性
nusers
而不是
user
。最后,使用index
i
访问循环中的数组元素

var text='{“nusers”:['+
“{”姓“:”约翰“,”姓“:”多伊“},”+
“{”姓“:”安娜“,”姓“:”史密斯“},”+
“{”firstName:“sadsf”,“lastName:“sdasda”},”+
“{”firstName:“fnSaleh”,“lastName:“lnSaleh”}]}”;
var va=“nusers”;
obj=JSON.parse(文本);
对于(i=0;i<(obj[va].长度);i++){
var st=obj[va][i]。名字;
控制台日志(st);

}
使用变量访问对象属性时,请使用方括号。您还需要获取
索引
以便
obj[va][i].firstName
将给出名字

var text='{“nusers”:['+
“{”姓“:”约翰“,”姓“:”多伊“},”+
“{”姓“:”安娜“,”姓“:”史密斯“},”+
“{”firstName:“sadsf”,“lastName:“sdasda”},”+
“{”firstName:“fnSaleh”,“lastName:“lnSaleh”}]}”;
var va=“nusers”;
var obj=JSON.parse(文本);
对于(变量i=0;i<(obj[va].长度);i++){
var st=obj[va][i]。名字;
控制台日志(st);

}
使用变量访问对象属性时,请使用方括号。您还需要获取
索引
以便
obj[va][i].firstName
将给出名字

var text='{“nusers”:['+
“{”姓“:”约翰“,”姓“:”多伊“},”+
“{”姓“:”安娜“,”姓“:”史密斯“},”+
“{”firstName:“sadsf”,“lastName:“sdasda”},”+
“{”firstName:“fnSaleh”,“lastName:“lnSaleh”}]}”;
var va=“nusers”;
var obj=JSON.parse(文本);
对于(变量i=0;i<(obj[va].长度);i++){
var st=obj[va][i]。名字;
控制台日志(st);

}
首先,在顶部声明所有变量

然后使用右键(
'nusers'
,最后是
s
)访问对象

为了访问一个对象,您需要一个带括号的符号,因为您有一个变量。这对于使用索引访问数组也是必需的

var text='{“nusers”:['+
“{”姓“:”约翰“,”姓“:”多伊“},”+
“{”姓“:”安娜“,”姓“:”史密斯“},”+
“{”firstName:“sadsf”,“lastName:“sdasda”},”+
“{”firstName:“fnSaleh”,“lastName:“lnSaleh”}]}”,
va=“nusers”,
obj=JSON.parse(文本),
我
st;
对于(i=0;i}
首先,在顶部声明所有变量

然后使用右键(
'nusers'
,最后是
s
)访问对象

为了访问一个对象,您需要一个带括号的符号,因为您有一个变量。这对于使用索引访问数组也是必需的

var text='{“nusers”:['+
“{”姓“:”约翰“,”姓“:”多伊“},”+
“{”姓“:”安娜“,”姓“:”史密斯“},”+
“{”firstName:“sadsf”,“lastName:“sdasda”},”+
“{”firstName:“fnSaleh”,“lastName:“lnSaleh”}]}”,
va=“nusers”,
obj=JSON.parse(文本),
我
st;
对于(i=0;i}
基本上,您的代码中有几个问题

  • va='user'-->这需要是
    nusers
  • 无论何时使用变量访问属性,都应该使用
    []
    符号来访问属性
  • 在循环中,您还需要使用index来访问名字
  • var text='{“nusers”:['+'{“firstName”:“John”,“lastName”:“Doe”},+'{“firstName”:“Anna”,“lastName”:“Smith”},+'{“firstName”:“sadsf”,“lastName”:“sdasda”},+'{“firstName”:“fnSaleh”,“lastName”:“sallnh”});
    var va=“nusers”;
    var obj=JSON.parse(文本);
    对于(i=0;i}
    基本上,您的代码中有几个问题

  • va='user'-->这需要是
    nusers
  • 无论何时使用变量访问属性,都应该使用
    []
    符号来访问属性
  • 在循环中,您还需要使用index来访问名字
  • var text='{“nusers”:['+'{“firstName”:“John”,“lastName”:“Doe”},+'{“firstName”:“Anna”,“lastName”:“Smith”},+'{“firstName”:“sadsf”,“lastName”:“sdasda”},+'{“firstName”:“fnSaleh”,“lastName”:“sallnh”});
    var va=“nusers”;
    var obj=JSON.parse(文本);
    对于(i=0;i}
    我不清楚你到底想干什么
    var text = '{ "nusers" : [' +
    '{ "firstName":"John" , "lastName":"Doe" },' +
    '{ "firstName":"Anna" , "lastName":"Smith" },' +
    '{ "firstName":"sadsf" , "lastName":"sdasda" },' +
    '{ "firstName":"fnSaleh" , "lastName":"lnSaleh" }]}';
    
    var va = "nuser";
     obj = JSON.parse(text);
    
    for(i=0;i< (obj.va.length);i++){
    
    var st = obj.va.firstName;
    
    console.log(st);
    }