在 PHP 中,我可以向数组中添加一个值,如下所示:
array[]=1;
array[]=2;
输出将是0=>'1', 1=>'2';
如果我在 javascript 中尝试相同的代码,它会返回Uncaught SyntaxError: Unexpected string。那么,在 JS 中有什么方法可以像 PHP 一样工作吗?谢谢
在 PHP 中,我可以向数组中添加一个值,如下所示:
array[]=1;
array[]=2;
输出将是0=>'1', 1=>'2';
如果我在 javascript 中尝试相同的代码,它会返回Uncaught SyntaxError: Unexpected string。那么,在 JS 中有什么方法可以像 PHP 一样工作吗?谢谢
只需Array.push
在 javascript 中使用
var arr = [1,2,3,4];
// append a single value
arr.push(5); // arr = [1,2,3,4,5]
// append multiple values
arr.push(1,2) // arr = [1,2,3,4,5,1,2]
// append multiple values as array
Array.prototype.push.apply(arr, [3,4,5]); // arr = [1,2,3,4,5,1,2,3,4,5]
以编程方式,您只需“推送”数组中的一个项目:
var arr = [];
arr.push("a");
arr.push("b");
arr[0]; // "a";
arr[1]; // "b"
你不能做你建议的事情:
arr[] = 1
不是有效的JavaScript。
对于特殊情况,您可以使用 next(不带 .push()):
var arr = [];
arr[arr.length] = 'foo';
arr[arr.length] = 'bar';
console.log(arr); // ["foo", "bar"]
<script>
var fruits = ["Banana", "Orange", "Apple", "Mango"];
function myFunction()
{
fruits.push("Kiwi")
var x=document.getElementById("demo");
x.innerHTML=fruits;
}
</script>
我想找到一种方法来将值作为数组元素添加到变量或属性中,而这种方法尚不存在。(很像 php 的 $var[] = 'foo'。)所以我四处打听,这就是我学到的。
多变的:
var arr;
(arr = arr || []).push('foo');
财产:
var obj = {};
(obj.arr = obj.arr || []).push('foo');
|| 如果为真则返回左边,如果左边为假则返回右边。到 .push() 执行时, arr 是一个数组——如果它还没有的话。