我有以下代码......
<script type="text/javascript">
var arr= new Array('10');
arr[0]='Need For Guru';
arr[1]='Qualities of a Guru';
arr[2]='Living Guru';
arr[3]='Who is a Satguru?';
arr[4]='Guru and Spiritual master';
arr[5]='Definition of discipleship';
arr[6]='Power of Faith';
arr[7]='Bad mouthing a Guru';
arr[8]='Fake Guru Shishya';
arr[9]='Pitfalls in the path of liberation';
var text='['+arr[0]+',\''+arr[1]+'\','+arr[2]+',\''+arr[3]+'\','+arr[4]+',\''+arr[5]+'\','+arr[6]+',\''+arr[7]+'\','+arr[8]+',\''+arr[9]+'\']';
document.write(text);
activatables('section', text );
</script>
我的问题是,我想使用value
text
作为javascript代码的一部分---
activatables('section', text );
..以便代码变为如下所示
activatables('section', ['Need For Guru','Qualities of a Guru',...]);
但是我无法做同样的事情..可以帮到这个人吗?
答案 0 :(得分:1)
我想我明白你得到了什么...你想将数组序列化为文本,并将文本反序列化为新数组吗?
将其变成字符串......
var arr = ["Need for a Guru", "Qualities of a Guru" /*, etc... */ ];
var text = JSON.stringify(arr);
将字符串转换为数组...
var text = '["Need for a Guru", "Qualities of a Guru"]';
var arr = JSON.parse(text);
activatables('section', arr);
如果您已经有权访问源变量,显然您不需要反序列化/解析文本...您可以直接插入它。
var arr = ["Need for a Guru", "Qualities of a Guru" /*, etc... */ ];
activatables('section', arr);
答案 1 :(得分:0)
你为什么要这样做?如果需要数组的字符串表示形式,请使用:
JSON.stringify(arr);
可以使用以下方式作为参数传递:
activatables('section', JSON.stringify(arr) );
但是,在您的情况下,您似乎希望将字符串section
和数组本身作为函数activatables
的参数传递。如果是这种情况,您需要做的就是:
activatables('section', arr );
答案 2 :(得分:0)
activatables('section', ['Need For Guru','Qualities of a Guru',...]);
表示您将数组传递给activatables
。使用当前代码,您可以通过传递arr
来获得该效果,这是您想要的数组:
activatables('section', arr);