PHP到Javascript多维数组
我有一些php代码,我正试图用Javascript重写。当我通过调试器运行我的原始JS代码时,它不喜欢我的额外括号(见下文) 编辑:供参考,PHP非常有效 PHP:PHP到Javascript多维数组,javascript,arrays,multidimensional-array,foreach,Javascript,Arrays,Multidimensional Array,Foreach,我有一些php代码,我正试图用Javascript重写。当我通过调试器运行我的原始JS代码时,它不喜欢我的额外括号(见下文) 编辑:供参考,PHP非常有效 PHP: <?php $g = array( array("H", "T", 1), array("L", "M", 4), array("U", "V", 6) ); $v = array(); $n = array(); foreach ($g as $item) { array_push($v
<?php
$g = array( array("H", "T", 1), array("L", "M", 4), array("U", "V", 6) );
$v = array();
$n = array();
foreach ($g as $item) {
array_push($v, $item[0], $item[1]);
$n[$item[0]][] = array("final" => $item[1], "cost" => $item[2]);
$n[$item[1]][] = array("final" => $item[0], "cost" => $item[2]);
}
?>
var g = [ ["H", "T", 1], ["L", "M", 4], ["U", "V", 6] ];
var v = [];
var n = [];
g.forEach(function(item) {
v.push(item[0], item[1]);
n[item[0]][] = [{"final": item[1], "cost": item[2]}];
n[item[1]][] = [{"final": item[0], "cost": item[2]}];
});
非常感谢您的帮助 问题在括号[]中。这种表示法在PHP中有效,但在JavaScript中无效。为此,请使用push方法。看:
var g = [ ["H", "T", 1], ["L", "M", 4], ["U", "V", 6] ];
var v = [];
var n = [];
g.forEach(function(item) {
v.push(item[0], item[1]);
n[item[0]].push([{"final": item[1], "cost": item[2]}]);
n[item[1]].push([{"final": item[0], "cost": item[2]}]);
});
问题在括号[]中。这种表示法在PHP中有效,但在JavaScript中无效。为此,请使用push方法。看:
var g = [ ["H", "T", 1], ["L", "M", 4], ["U", "V", 6] ];
var v = [];
var n = [];
g.forEach(function(item) {
v.push(item[0], item[1]);
n[item[0]].push([{"final": item[1], "cost": item[2]}]);
n[item[1]].push([{"final": item[0], "cost": item[2]}]);
});