美元和美元之间的区别是什么?get和$. getjson
What is the difference between $.get and $.getJSON?
我想弄清楚$。$.getJSON
我有一个名为Test的外部文件。JSON,它只包含以下内容:
{ "name": "John" }
我可以用
$.getJSON('Test.JSON', function(data) {
console.log(data);
});
或
$.get('Test.JSON', function(data) {
console.log(data);
});
我得到了相同的结果在控制台,
Object {name: "getJSON"}
是因为我的文件扩展名是。json吗?
如果我将文件扩展名更改为.js(即Test.js),则$. js的控制台不会打印任何内容。但是对于$.getJSON
,我仍然得到相同的结果作为这个问题的第二部分,我认为如果我把Test.js中的对象用单引号括起来
'{ "name": "John" }'
那么我可以这样做:
$.get('Test.js', function(data) {
console.log($.parseJSON(data));
});
但是这给了我
Uncaught SyntaxError: Unexpected token '
如你所见,我完全糊涂了。
$.getJSON
- jQuery发送
Accept: application/json
报头 - jQuery解释入站响应,将其转换为JavaScript对象,并将其传递给回调(因此您不必与eval或其他转换机制混淆)。
Accept
标头并适当地处理请求。如果您正在使用不同的框架或使用自己的框架,则可以检查Accept
标头以检测格式。
出现语法错误的原因是:
"'{ '"name'": '"John'" }'"
如果没有额外的单引号, $.parseJSON
应该可以正常工作。你确定第一次试的时候没有打错字吗?
我去掉了单引号,所以Test.js就是
{ "name": "John" }
当我尝试
$.get('Test.js', function(data) {
console.log($parseJSON(data));
});
控制台没有显示任何内容。
如果我这样做
var data = '{"name":"John"}'
console.log($.parseJSON(data));
然后我当然得到了想要的结果。
我只是挣扎着试图理解为什么当我使用$。get检索该字符串(带或不带对象周围的单引号),我要么得到一个错误,要么根本没有对象。
相关文章:
- 有没有一种方法可以防止img get请求使用css或js发生
- CORS-重定向到第二个GET正在接收的页面
- 美元http.angular方法中的Get方法没有按预期工作
- JS美元.Get或$.getScript传递数据到文件
- 美元.Get不是一个函数
- 美元AngularJS http.Get为ng-data-repeat指令检索一个不可用格式的数组
- 使用AngularJS'处理64位数字;美元http.get()
- 美元.get命令在JavaScript中乱序运行
- 美元AngularJS http.Get返回undefined,并且$http()不是函数
- Jquery美元.Get Get方法不工作
- 美元http.get在AngularJS中失败了
- jQuery美元.Get有时有效,有时无效
- 美元http.get获取反序列化JSON,但不能将其赋值给array
- 角http.get美元.PhpStorm中出现的错误
- 使用http美元.Get in ng-repeat会导致多个错误
- Angularjs http.get美元().来自服务器的JSON
- Jquery美元.Get不会在$(document).ready上运行
- 角美元http.Get自动将int转换为string
- 美元和美元之间的区别是什么?get和$. getjson
- 美元.ajax POST到我的web服务工作正常,但GET请求失败错误405方法不允许