获取javascript中对象的变量
可能重复:获取javascript中对象的变量,javascript,json,parsing,Javascript,Json,Parsing,可能重复: 我正在制作一个从一些服务接收JSON对象的应用程序。使用JSON.parse()解析此对象,并返回JavaScript对象 是否有任何方法可以找出对象中存在的不同变量 例如: var some_object { var a: "first" var b: "second" } 我需要找到一种方法,从这个对象some\u对象 JavaScript中是否有任何预定义的方法可以做到这一点?您可以这样做: var myObject = { abc: 14, de
我正在制作一个从一些服务接收
JSON对象的应用程序。使用JSON.parse()
解析此对象,并返回JavaScript对象
是否有任何方法可以找出对象中存在的不同变量
例如:
var some_object
{
var a: "first"
var b: "second"
}
我需要找到一种方法,从这个对象some\u对象
JavaScript中是否有任何预定义的方法可以做到这一点?您可以这样做:
var myObject = {
abc: 14,
def: "hello"
}
for (var i in myObject ) {
alert("key: " + i + ", value: " + myObject[i])
}
console.log(some_object.a) // "first";
//or:
console.log(some_object["b"]) // "second";
var some_object = {
a: "first",
b: "second"
}
在这种情况下,i
将迭代myObject的键(abc
和def
)。使用myObject[i]
可以在i
中获取当前键的值
请注意,E您的对象定义是错误的。而不是
var a: "first"
你只需要使用
a: "first"
内部对象。这将实现以下功能:
for (var key in some_object) {
console.log(key, some_object[key]);
}
但是,您需要以不同的方式初始化对象:
var some_object = {
a: "first", // Note: Comma here,
b: "second", // And here,
c: "third" // But not here, on the last element.
}
结果:
a first
b second
因此,在我的for
循环中,key
是值的名称,某个对象[key]
是值本身
如果您已经知道对象中的变量(“名称”),则可以按如下方式访问它们:
var myObject = {
abc: 14,
def: "hello"
}
for (var i in myObject ) {
alert("key: " + i + ", value: " + myObject[i])
}
console.log(some_object.a) // "first";
//or:
console.log(some_object["b"]) // "second";
var some_object = {
a: "first",
b: "second"
}
您应该能够调用some\u object.a
来获取a
,some\u object.b
来获取b
,等等
但是,您不应该在这样的对象中看到var
。对象表示法通常如下所示:
var myObject = {
abc: 14,
def: "hello"
}
for (var i in myObject ) {
alert("key: " + i + ", value: " + myObject[i])
}
console.log(some_object.a) // "first";
//or:
console.log(some_object["b"]) // "second";
var some_object = {
a: "first",
b: "second"
}
注意,没有var
声明,对象的每个属性后面都使用逗号,最后一个属性除外。我建议您为数组保留I和j,为数组保留其他字母(我使用o)objects@micha:是的,我试过了!上面写着未定义!你能添加你试过的代码吗?我试过打印这样的值:for(vari in some_Object){alert(some_Object[i]);console.log(some_Object[i])}@user1519703,你试过这个代码吗?:我试过了,它给出了未定义的!!。。。怎么用?你复制了我的确切代码吗?我实际上尝试了一些方法并找到了答案:var no_of_variables=Object.keys(some_Object);谢谢大家的帮助!