Javascript JSON外部文件vs在JS中定义
关于何时使用JSON外部文件(例如jQuery的外部文件),有哪些参数Javascript JSON外部文件vs在JS中定义,javascript,jquery,json,getjson,Javascript,Jquery,Json,Getjson,关于何时使用JSON外部文件(例如jQuery的外部文件),有哪些参数 $.getJSON('external.json',function(data){}); (ajax检索)而不是使用javascript定义它 var myJson = { "someVar": { "1": ["test1","test2"], "2": ["test3","test4"]} } “正确”的做法是什么?它是否取决于JSON长度,或者是否有其他因素可以告诉您使用哪种方法 我的看法是:在通过ajax调用加载
$.getJSON('external.json',function(data){});
(ajax检索)而不是使用javascript定义它
var myJson = { "someVar": { "1": ["test1","test2"], "2": ["test3","test4"]} }
“正确”的做法是什么?它是否取决于JSON长度,或者是否有其他因素可以告诉您使用哪种方法
我的看法是:在通过ajax调用加载数据时,加载另一个文件应该很慢,或者在已经打包的javascript文件中添加大量行,这也不是一件好事。当然,你应该在哪里使用一个或另一个…,肯定有一些区别
我不仅对速度差异感兴趣(从ajax获取文件当然比较慢),而且对其他方面也感兴趣,例如在某些情况下通常使用什么以及应该使用什么 第一个是以下内容的简写:
$.ajax({
dataType: "json",
url: url,
data: data,
success: success
});
这是一个Ajax请求,比在文件中放入一个简单的JSON对象要花更多的时间。
如果可能的话,我更喜欢第二个。此外,如果你参加了有良好的表现,第一个是更长的
时间(加载+解析2个文件)>>时间(读取Javascript对象)第一个是以下内容的缩写:
$.ajax({
dataType: "json",
url: url,
data: data,
success: success
});
这是一个Ajax请求,比在文件中放入一个简单的JSON对象要花更多的时间。
如果可能的话,我更喜欢第二个。此外,如果你参加了有良好的表现,第一个是更长的
时间(加载+解析2个文件)>>时间(读取Javascript对象)第一个是以下内容的缩写:
$.ajax({
dataType: "json",
url: url,
data: data,
success: success
});
这是一个Ajax请求,比在文件中放入一个简单的JSON对象要花更多的时间。
如果可能的话,我更喜欢第二个。此外,如果你参加了有良好的表现,第一个是更长的
时间(加载+解析2个文件)>>时间(读取Javascript对象)第一个是以下内容的缩写:
$.ajax({
dataType: "json",
url: url,
data: data,
success: success
});
这是一个Ajax请求,比在文件中放入一个简单的JSON对象要花更多的时间。
如果可能的话,我更喜欢第二个。此外,如果你参加了有良好的表现,第一个是更长的
时间(加载+解析2个文件)>>时间(读取Javascript对象)如果您的数据在页面创建时已知,您可能最好使用如下对象文字:
var myJson = {...}
然而,正如Kursion提到的
$.getJSON(...)
是一种通过ajax异步检索json数据的速记方法。如果要从服务器检索页面加载时未知的数据,可以使用它
例如,如果用户在输入控件中输入搜索项,您可能希望检索JSON以响应该搜索项,而不执行整个页面更新。您不能简单地预先定义javascript对象,因为您事先不知道搜索词是什么。如果您的数据在页面创建时已知,您可能最好使用如下对象文字:
var myJson = {...}
然而,正如Kursion提到的
$.getJSON(...)
是一种通过ajax异步检索json数据的速记方法。如果要从服务器检索页面加载时未知的数据,可以使用它
例如,如果用户在输入控件中输入搜索项,您可能希望检索JSON以响应该搜索项,而不执行整个页面更新。您不能简单地预先定义javascript对象,因为您事先不知道搜索词是什么。如果您的数据在页面创建时已知,您可能最好使用如下对象文字:
var myJson = {...}
然而,正如Kursion提到的
$.getJSON(...)
是一种通过ajax异步检索json数据的速记方法。如果要从服务器检索页面加载时未知的数据,可以使用它
例如,如果用户在输入控件中输入搜索项,您可能希望检索JSON以响应该搜索项,而不执行整个页面更新。您不能简单地预先定义javascript对象,因为您事先不知道搜索词是什么。如果您的数据在页面创建时已知,您可能最好使用如下对象文字:
var myJson = {...}
然而,正如Kursion提到的
$.getJSON(...)
是一种通过ajax异步检索json数据的速记方法。如果要从服务器检索页面加载时未知的数据,可以使用它
例如,如果用户在输入控件中输入搜索项,您可能希望检索JSON以响应该搜索项,而不执行整个页面更新。您不能简单地预先定义javascript对象,因为您事先不知道搜索词是什么。谢谢您的回答。我知道第一个是ajax调用而已。。。但是:在javascript中定义150行json也不是一个非常好和清晰的解决方案,或者是吗?这不是一个问题。你可以把它写在一行上。我要做的是:使用coffeescript并使用胶水脚本将一个文件的内容附加到另一个文件。谢谢你的回答。我知道第一个是ajax调用而已。。。但是:在javascript中定义150行json也不是一个非常好和清晰的解决方案,或者是吗?这不是一个问题。你可以把它写在一行上。我要做的是:使用coffeescript并使用胶水脚本将一个文件的内容附加到另一个文件。谢谢你的回答。我知道第一个是ajax调用而已。。。但是:在javascript中定义150行json也不是一个非常好和清晰的解决方案,或者是吗?这不是一个问题。你可以把它写在一行上。我要做的是:使用coffeescript并使用胶水脚本将一个文件的内容附加到另一个文件。谢谢你的回答。我知道第一个是ajax调用而已。。。但是:在javascript中定义150行json也不是一个非常好和清晰的解决方案,或者是吗?这不是一个问题。你可以把它写在一行上。我会做什么:使用咖啡脚本和胶水脚本,将ap