如果json文件中有对象,如何将对象加载到javascript中?
我的html中有以下脚本:
<script src='scene.json'></script>
<script>
var x = scene.x;
</script>
这是文件scene.json,位于同一个文件夹中:
{"scene": {
"x": 0,
"y": 0,
"w": 11000,
"h": 3500,
}}
但是json文件没有正确加载(意外的标记':'),并且scene.x引用也可能不是它应该完成的方式。是否可以直接引用数据?或者是否需要通过某些http请求加载?
答案 0 :(得分:24)
将此修改为javascript:
var scene = {
"x": 0,
"y": 0,
"w": 11000,
"h": 3500
};
或者使用jQuery api和函数getJSON
<script>
var scene={};
$.getJSON('scene.json', function(data) {
scene=data;
});
</script>
答案 1 :(得分:11)
{"scene": {
"x": 0,
"y": 0,
"w": 11000,
"h": 3500
}}
是无效的javascript(因为它被视为一个块),你可能只想要一个javascript文件:
var scene = {
"x": 0,
"y": 0,
"w": 11000,
"h": 3500
};
如果要将文件保留为JSON,则无法从脚本元素引用它并使其在有效JSON时工作。您需要使用ajax请求来获取文件并解析JSON。
答案 2 :(得分:3)
将您的json数据设置为一个变量,如
data = {"scene": {
"x": 0,
"y": 0,
"w": 11000,
"h": 3500
}
}
然后将其作为
访问data.scene.x //it will give 0