当我使用jQuery库下载一个数组并使用原生javascript获取它的长度时,它只是吐出数组的总字节数,如下所示:
$.get({
url: 'https://rawgit.com/tvman-123/shrek/master/ExampleOutputForSubscription_Post.PHP', //
data: {},
success: function(data) {
ParseData(data);
}
});
function ParseData(data) {
console.log(data.length) //Returns 221
}
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
但是当我将数组包含在内联时,它就像它应该的那样工作,就像这样:
data=["UU9CuvdOVfMPvKCiwdGKL3cQ","UUrTNhL_yO3tPTdQ5XgmmWjA","UUz-RZblnhjXK_krP1jDybeQ","UUc_xdkOBgSYLmXTn-VSQ4uA","UUmb8hO2ilV9vRa8cilis88A","UU45SDrjKlPSY0bTvH6F7TOA","UUdGkmb5zEDXnPSmQlV43t0Q","UUpeGBKn0axOJAcPHkcPiXcg",""]
ParseData(data)
function ParseData(data){
console.log(data.length)//Returns 9
}
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
我的理解是第一个是字节数组,第二个是arraylist.
有人可以向我解释为什么它这样做以及如何解决它?
编辑:
谢谢大家的答案,并帮助我解决这个问题
解决方法:
收到的数据类型是JSON!
添加dataType:“json”
$.get({
url: 'https://rawgit.com/tvman-123/shrek/master/ExampleOutputForSubscription_Post.PHP', //
data: {},
dataType: "json",
success: function(data) {
console.log(data.length); // data is parsed.. =)
}
});