JavaScript 数组到 URL 编码

标签 javascript urlencode

是否有任何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/

相关文章:

javascript - 在弹出窗口上设置 onerror 处理程序

javascript - 定义循环次数 - Benchmark.js

javascript - 在通过 jquery/Javascript 大量添加新元素后,DOM 是否立即就绪?

javascript - 从ajax中提取数据以更改覆盖层上的div

php - 如何使用 Enter 回发文本区域?

javascript - 如何从连接回调之外的应用程序中的任何位置发出套接字?

php - 去掉搜索中的 %40

seo - 谷歌无法索引路径

coldfusion - 为什么CFML中的URLEncodedFormat()会编码有效的URL字符?

url-rewriting - 在 IIS 7.5 上的 Mediawiki URL 中显示冒号