用javascript加载JSON文件
Loading a JSON file in javascript
我在JSON和javascript方面遇到了一些问题。我想做的是有一个JSON文件,其中包含一些关于我想要使用Three.js渲染的对象的信息。例如,我的JSON文件将具有我想要制作的立方体的宽度、高度和深度值,我希望能够从JSON文件中提取这些值,并将它们用作立方体几何体的参数。目前,我将JSON信息保存为一个字符串,保存到一个变量中,如下所示:
var text = '{"floorx":"11","floorz":"4","cabinets":[{"cabx":"1", "cabz":"2","width":"90", "depth":"130", "height":"200", "orientation":"N"}, {"cabx":"2.2", "cabz":"2","width":"90", "depth":"130", "height":"200", "orientation":"N"}, {"cabx":"5", "cabz":"2","width":"90", "depth":"130", "height":"200", "orientation":"N"}]}';
var obj = JSON.parse(text);
var floor1 = floor(obj.floorx,obj.floorz);
scene.add(floor1);
这正是我想要的工作方式。我现在遇到的麻烦是提取保存到var文本中的JSON代码,并将其放入自己的JSON文件中,然后读取。我尝试过AJAX,但我甚至不确定这是否是我想要。任何帮助都将不胜感激
您可以通过两种方式来实现这一点。一个确实是通过发出AJAX请求。如果你使用的是jQuery或AngularJS,那就非常简单了(但还有很多其他框架可以让这变得非常简单)。请注意,如果你这样做,你需要使用例如JSON.parse手动解析输入。为了完成这个过程,你应该删除JSON表达式前面的var定义,并将JSON.pase的输出分配给一个变量。
如果您不想使用AJAX请求,也可以将JSON代码作为常规Javascript文件包含在内。所以,把它放在一个单独的文件中,/some_file.js:
var text = '{"floorx":"11","floorz":"4","cabinets":[{"cabx":"1", "cabz":"2","width":"90", "depth":"130", "height":"200", "orientation":"N"}, {"cabx":"2.2", "cabz":"2","width":"90", "depth":"130", "height":"200", "orientation":"N"}, {"cabx":"5", "cabz":"2","width":"90", "depth":"130", "height":"200", "orientation":"N"}]}';
然后用将其包含在HTML中
<script type="text/javascript" src="/some_file.js">
基本上,这两种方法的操作方式相同,因为在这两种情况下,浏览器都会发出额外的请求来加载额外的文件,但后者可能更容易。
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- 不显示带有本地json文件数据的谷歌地图脚本
- 可以't使用Appcelerator将JSON文件解析为JavaScript中的TableView
- 加载两个具有相同父密钥名称的json文件
- 使用JSON文件中的变量(字符串)填充文本区域
- 动态显示JSON文件内容
- 将JSON转换为放入Sdcard中的CSV文件
- 正在尝试将JSON文件放入JS数组
- 如何检查Json文件更新,如果更新了,则用更新的数据刷新我的页面
- 单击按钮更改加载到表中的JSON文件
- 创建一个包含两个文件 json 的 Angularjs 过滤器
- Multer上传文件+JSON对象
- 使用node.js读取和写入文件(JSON)
- 如何在angularjs中设置变量's值来上传文件json数据
- 向现有文件. Json写入Json,没有“语法错误”
- 如何保存更新json(文件json)与jquery或javascript
- AngularJS:当使用$http请求一个文件(json content)时发生SyntaxError
- 如何简化此代码?将文件json转换为数组json
- 如何从外部文件JSON创建JAVASCRIPT数组