本文介绍了序列化列表的好方法?- Javascript/AJAX的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
限时送ChatGPT账号..只是想问这个问题,因为stackoverflow上总是有很多亮点:)
just felt like asking this as there are always jewels popping up on stackoverflow :)
我有以下列表:
list1 = [['command','arg1','arg2'], ['command2','arg1'], ... ]
您建议如何将其转换为字符串以作为 ONE GET 参数传递?
例如
http://webgame_site/command_list/?data=...
<小时>
我目前正在做的是使用逗号分隔列表 ,
;
,但我不喜欢这个想法,因为如果我决定在其中引入这些方法会中断字符串.
What I am currently doing is separating lists using commas ,
;
, but I don't like this idea as the method would break if I decide to introduce these within strings.
我正在尽量精简.
我的一个想法是将列表编码为 base64:
[['command','arg1','arg2'], ['command2','arg1']]
=> "W1snY29tbWFuZCcsJ2FyZzEnLCdhcmcyJ10sWydjb21tYW5kMicsJ2FyZzEnXV0="
比 URIencode 短
which is shorter than URIencode
有什么想法吗?:)
推荐答案
将其转换为 json,然后使用 encodeURI 对字符进行编码.
Convert it to json then encode the characters using encodeURI.
var list1 = [['command','arg1','arg2'], ['command2','arg1']];
var encoded = encodeURI(JSON.stringify(list1));
alert(encoded);
针对 base64 进行
Edit for base64:
var list1 = [['command','arg1','arg2'], ['command2','arg1']];
var encoded = btoa(JSON.stringify(list1));
alert(encoded);
alert(atob(encoded));
这篇关于序列化列表的好方法?- Javascript/AJAX的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
更多推荐
[db:关键词]
发布评论