我有一个会话变量,它是一个整数数组,例如:
myArray{1,4,3,5,6,7,9,2,...n}
我想做的是将其在会话变量
<%=Session("myArray")%>
中传递给我的客户端JavaScript。 如果我获取会话变量并将其转换为如下字符串,我就可以做到这一点:
var b = '<%=Session("myArray")%>';
var bob = new Array();
bob = b.split(',');
我只是想知道是否有一种更直接的方法来传递数组,可能不需要在传递之前将其转换为字符串,这样我就可以将它作为数组传递?
谢谢
你可以将整数解析为已经是数组的东西,所以你的 bob 数组会像这样:
var bob = [<%=GetIntegersString(Session("myArray"))%>];
当页面提供给客户端时,它应该如下所示:
var bob = [1,4,3,5,6,7,9];
函数
GetIntegersString
是您需要实现的东西
这应该可以正常工作:
var bob = [<%=Join(Session("myArray"), ", ")%>];
JSON 是 Javascript 表达文字值的方式,因此您可以将数组转换为 json,然后直接赋值:
var bob = '<%=array_to_json(Session("myArray"))%>';
http://www.json.org 推荐一些 ASP 实用程序将数据转换为 json:
http://tforster.wik.is/ASP_Classic_Practices_For_The_21st_Century/JSON4ASP
http://code.google.com/p/aspjson/
http://www.webdevbros.net/2007/04/26/generate-json-from-asp-datatypes/
阅读有关 JSON 的更多内容,了解如何在 JS 中将任何值表示为文字。