Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用变量引用对象字段?_Javascript - Fatal编程技术网

Javascript 如何使用变量引用对象字段?

Javascript 如何使用变量引用对象字段?,javascript,Javascript,让我们假设我有一个目标: var obj = {"A":"a", "B":"b", "x":"y", "a":"b"} 当我想引用“A”时,我只写obj.A 当我在变量中输入密钥时,如何执行此操作,即: var key = "A"; 是否有任何函数返回值或null(如果键不在对象中)?使用括号表示法,如下所示: var key = "A"; var value = json[key]; 在JavaScript中,这两者是等效的: object.Property object["Proper

让我们假设我有一个目标:

var obj = {"A":"a", "B":"b", "x":"y", "a":"b"}
当我想引用“A”时,我只写
obj.A

当我在变量中输入密钥时,如何执行此操作,即:

var key = "A";

是否有任何函数返回值或
null
(如果键不在对象中)?

使用括号表示法,如下所示:

var key = "A";
var value = json[key];
在JavaScript中,这两者是等效的:

object.Property
object["Property"];
需要明确的是,这不是特定于JSON的,JSON只是对象表示法的一个特定子集……这适用于任何JavaScript对象。如果不在对象中,结果将是未定义的。

如何:

json[key]
尝试:


关于问题的第二部分(请参见)

+1。请注意,您提到的两种形式只有在属性不是保留字时才是等效的。。。其中JS中有很多,还有很多是出乎意料的。因此,从这个意义上讲,
对象[“属性”]
更安全。另外,
object.Property
有一个优点(当静态地知道
Property
时),像JSLint这样的工具可以对它们进行检查。
json.hasOwnProperty(key)