是否有任何js函数可以将数组转换为urlencoded? 我完全是 JS 新手...谢谢!...
我的数组是键值数组.... 所以,
myData=new Array('id'=>'354313','fname'=>'Henry','lname'=>'Ford');
与
相同myData['id']='354313';
myData['fname']='Henry';
myData['lname']='Ford';
myData.join('&'); //returns error, it doesn't work on such array...
有什么解决办法吗?
哦,对不起... 我有一个这样的数组
var myData=new Array('id'=>'354313','fname'=>'Henry','lname'=>'Ford');
然后我需要将数组转换为:
id=354313&fname=Henry&lname=Ford
最佳答案
试试这个:
var myData = {'id': '354313', 'fname':'Henry', 'lname': 'Ford'};
var out = [];
for (var key in myData) {
if (myData.hasOwnProperty(key)) {
out.push(key + '=' + encodeURIComponent(myData[key]));
}
}
out.join('&');
有关为什么使用 hasOwnProperty
的解释,请查看 this answer to "How do I loop through or enumerate a JavaScript object?" .
关于JavaScript 数组到 URL 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4656168/