Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript数组的行为类似于PHP?_Php_Javascript - Fatal编程技术网

JavaScript数组的行为类似于PHP?

JavaScript数组的行为类似于PHP?,php,javascript,Php,Javascript,有没有一种方法可以像我在PHP中那样在JavaScript数组中赋值 例如,在PHP中,我可以做到: $ar = array(); $ar[] = "Some value"; $ar[] = "Another value"; 这可以用JavaScript实现吗?或者,如果没有,是否有类似的方法?可以直接翻译原始代码 var ar = []; ar[ar.length] = "Some value"; ar[ar.length] = "Another value"; 然而,一个更好的解决方案是

有没有一种方法可以像我在PHP中那样在JavaScript数组中赋值

例如,在PHP中,我可以做到:

$ar = array();
$ar[] = "Some value";
$ar[] = "Another value";

这可以用JavaScript实现吗?或者,如果没有,是否有类似的方法?

可以直接翻译原始代码

var ar = [];
ar[ar.length] = "Some value";
ar[ar.length] = "Another value";
然而,一个更好的解决方案是使用非常通用的
push
方法:

var ar = [];
ar.push("Some value");
ar.push("Another value");
var ar = [];
ar.push("Some value");
ar.push("Another value");

与大多数语言一样,JavaScript有一个将项添加到数组末尾的实现

有关javascript数组的更多信息,请查看此参考文档:

数组在javascript中的处理略有不同。在PHP中,这样的数组:

PHP

Javascript:

var myArray = [];
myArray[1] = 'value';
myArray[10] = 'value';


console.log(myArray.length); // output: 11
这是怎么回事?在PHP中,数组是一个动态容器。索引不必是连续的——事实上,关联数组(使用字符串索引而不是数字索引的数组)和标准数组之间没有什么区别

在javascript中,数组上下文中不存在“关联数组”的概念-这些将是对象文本(
{}
)。javascript中的数组对象是连续的。如果你有一个索引
10
,你还必须有10之前的索引;9、8、7等。此顺序列表中未明确指定值的任何值将用值
未定义的值填充:

根据上面的例子:

console.log(myArray); //[undefined, "value", undefined, undefined, undefined, undefined,` undefined, undefined, undefined, undefined, "value"]
$myArray = array();
$myArray[1] = 'value';
$myArray[10] = 'value';
echo count($myArray); // output: 2
var myArray = [];
myArray[1] = 'value';
myArray[10] = 'value';


console.log(myArray.length); // output: 11
console.log(myArray); //[undefined, "value", undefined, undefined, undefined, undefined,` undefined, undefined, undefined, undefined, "value"]