我来自 C++,对 JavaScript 知之甚少。
在 JavaScript 中,我知道我们可以执行以下操作:
<script>
var obj = JSON.parse('{ "name":"John", "age":30, "gibberish":"New York"}');
document.getElementById("demo").innerHTML = obj.name + ", " + obj.gibberish;
</script>
这是来自 W3School 的示例。当然,可以从任何地方获取 JSON 对象。但是我很好奇我们使用的时候到底发生了什么
obj.name or obj.gibberish
浏览器如何理解这些名称和乱码? 这背后发生了什么?有什么异常(exception)不能这样用吗?
提前致谢
最佳答案
'{ "name":"John", "age":30, "gibberish":"New York"}'
是一个 JSON
字符串。你需要转换 Json Object与 JSON.parse
一起使用.
转换为Object之后是这样的
var obj = JSON.parse('{ "name":null,"age":30, "gibberish":"New York"}');
console.log(obj)
查看console.log
Object有键和值对。您必须从具有受尊重的键的对象中获取特定值。
var obj = JSON.parse('{ "name":"John", "age":30, "gibberish":"New York"}');
console.log(obj.name)
eg : obj.name
首先获取整个obj
数据,然后获取代表name
的键的具体值。这个过程与对象obj的所有键值对相同。乱码
=>纽约
关于javascript - 当我们使用 json 键作为 JS 代码时会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44214635/