我有一个从ajax结果得到的字符串:
["name1", "name2", "name3", "name4", "name5"]
字符串模式与上面完全相同,包括
"
,并且总元素不固定我尝试了下面的代码,但不起作用:
var strArr="";
$.ajax({url:"myurl",success:function(result){
strArr=result;
}});
var arr = new Array(strArr);
更新:这是我的最新代码
var strArr="";
$.ajax({url:"myurl",success:function(result){
strArr=result;
alert(strArr); //["name1", "name2", "name3", "name4", "name5"]
}});
var arr= JSON.parse(strArr);
最佳答案
要将字符串转换为实际的Array,只需执行JSON.parse
,就像这样
var data = '["name1", "name2", "name3", "name4", "name5"]';
console.log(JSON.parse(data));
# [ 'name1', 'name2', 'name3', 'name4', 'name5' ]
您可以像这样确认返回的对象的类型
console.log(Object.prototype.toString.call(JSON.parse(data)));
# [object Array]
您的实际代码应如下所示
$.ajax({
url: "myurl",
success: function(result) {
alert(JSON.parse(result));
}
});