gpt4 book ai didi

javascript - 如何将多维传递给javascript并再次以多维形式存储?

转载 作者:行者123 更新时间:2023-12-03 07:37:36 25 4
gpt4 key购买 nike

我在 php 中有一个带有多维数组的变量:

$all = array(2) {
[0]=> array(2) {
[0]=> string(1) "1"
[1]=> string(1) "a"
}

[1]=> array(2) {
[0]=> string(1) "2"
[1]=> string(1) "b"
}
}

我尝试传递给 JavaScript,然后再次存储在数组中以便再次循环

尝试在 JavaScript 中存储到新数组(多维)

像这样window.a = new array(['1','a'],['2','b']);

var all = jQuery.parseJSON('<?php echo json_encode($all); ?>');
window.a = new array();
for(i=0; i< all.length; i++)
{
window.a.push([all[i][0],all[i][1]]);
}

正确的做法是什么???

抱歉,最小的 JavaScript 经验,谢谢。

最佳答案

json_encode的输出将是一个字符串而不是一个数组。本质上,您想要做的是将一个字符串分配给一个不带引号的变量,并尝试循环它。 json_encode不会自动将字符串转换为适合 javascript 的数组。

var all = <?php echo json_encode($all); ?>;

应改为

var all = jQuery.parseJSON('<?php echo json_encode($all); ?>');

但是,如果 json 编码数据中包含单引号来破坏字符串,则可能会遇到问题。您可能想考虑转义 $all变量为 addslashes或类似的东西。

这只是一个基本答案,可能还有更理想的答案。

关于javascript - 如何将多维传递给javascript并再次以多维形式存储?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35545170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com