Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.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 允许用户调用JSON对象的元素_Javascript_Json - Fatal编程技术网

Javascript 允许用户调用JSON对象的元素

Javascript 允许用户调用JSON对象的元素,javascript,json,Javascript,Json,是否有任何方法允许用户调用JSON对象的元素 大意是: var jsonobj = {"name":"charlie", "age":"17"}; var ins = document.getElementById('input_box'); var usergen = ins.value; div.innerHTML = jsonobj.usergen; 对 另外,您在jsonobj中定义的不是JSON。。。它只是一个对象文字。JSON是与JavaScript对象表示法兼容的对象的字符串

是否有任何方法允许用户调用JSON对象的元素

大意是:

var jsonobj = {"name":"charlie", "age":"17"};

var ins = document.getElementById('input_box');
var usergen = ins.value;

div.innerHTML = jsonobj.usergen;

另外,您在
jsonobj
中定义的不是JSON。。。它只是一个对象文字。JSON是与JavaScript对象表示法兼容的对象的字符串表示形式。

另外,您在
jsonobj
中定义的不是JSON。。。它只是一个对象文字。JSON是对象的字符串表示形式,与JavaScript的对象表示法兼容。

这里的对象只是一个“对象”

无论如何,方括号语法将满足您的要求:

div.innerHTML = jsonobj[usergen];
…请记住,用户可能输入一个不存在的属性名,在这种情况下,
jsonobj[usergen]
将返回
undefined
,当您尝试将其放入div时,该属性名将显示为字符串
“undefined”
。如果愿意,您可以进行测试:

if (usergen in jsonobj)
    div.innerHTML = jsonobj[usergen];
else {
    alert("The property '" + usergen + "' does not exist.");
    // OR perhaps
    div.innerHTML = "The property '" + usergen + "' does not exist.";
}
你所拥有的只是一个“对象”

无论如何,方括号语法将满足您的要求:

div.innerHTML = jsonobj[usergen];
…请记住,用户可能输入一个不存在的属性名,在这种情况下,
jsonobj[usergen]
将返回
undefined
,当您尝试将其放入div时,该属性名将显示为字符串
“undefined”
。如果愿意,您可以进行测试:

if (usergen in jsonobj)
    div.innerHTML = jsonobj[usergen];
else {
    alert("The property '" + usergen + "' does not exist.");
    // OR perhaps
    div.innerHTML = "The property '" + usergen + "' does not exist.";
}

jsonobj.usergen
未定义。你是说
jsonobj[usergen]
jsonobj.usergen
未定义。你的意思是
jsonobj[usergen]
?区别很重要,因为JavaScript的对象表示法与JSONDamn不完全兼容,是的,我对深奥术语的熟悉完全是狗屎,我最初称之为dict,这样更好吗?,但是当我尝试应用JSON标记时,看到JSON代表Javascript对象表示法时,我改变了它……所以这意味着对从属元素JSON[first][second][third]的扩展@游隼是的<代码>{“第一”:{“第二”:{“第三”:“值”}}}。您可以通过
['first']['second']['third']]
访问
value
,区别很重要,因为JavaScript的对象表示法与JSONDamn不完全兼容,是的,我对深奥术语的熟悉完全是狗屎,我最初称之为dict,这样更好吗?,但是当我尝试应用JSON标记时,看到JSON代表Javascript对象表示法时,我改变了它……所以这意味着对从属元素JSON[first][second][third]的扩展@游隼是的<代码>{“第一”:{“第二”:{“第三”:“值”}}}。您可以通过
['first']['second']['third']]