在某个项目中,想通过jsonp跨域获取豆瓣API的数据,但发现获取的数据中,评分原本是7.1就变成了7,6.0就变成了6。
相关代码
$(document).ready(function(){
if($("#douban_score").length > 0) {
var name = "奇葩说第五季";
$.ajax({
type: 'get',
dataType: "jsonp",
jsonp:"callback",
timeout: 5000,
url: 'http://api.douban.com/v2/movie/search?q='+ name +'&count=1',
error: function(){
alert('请求解析服务器失败');
},
success:function(data){
if(data.subjects[0].rating.average!=0){
$('#douban_score').text(data.subjects[0].rating.average)
}
}
})
}
});
jsonp获取的到部分数据:
json原本的数据
没有做特殊处理的情况下7.1是不会变成7的 -- 你这个是7.0
js数字类型显示时会自动忽略小数点最后的0的,如果要显示6.0 需要提前将数据以字符串形式传递过来 '6.0' 否则只会显示6
你可以随意试一试 6.30 6.0 这种在控制台看输出