javascript 可以在不指定 PHP 等键的情况下将元素添加到数组吗?
Posted
技术标签:
【中文标题】javascript 可以在不指定 PHP 等键的情况下将元素添加到数组吗?【英文标题】:Can javascript add element to an array without specifiy the key like PHP? 【发布时间】:2013-01-11 11:31:24 【问题描述】:在 php 中,我可以像这样向数组添加一个值:
array[]=1;
array[]=2;
输出将是0=>'1', 1=>'2';
如果我在 javascript 中尝试相同的代码,它会返回 Uncaught SyntaxError: Unexpected string 。那么,在 JS 中有什么方法可以像 PHP 一样工作吗?谢谢
【问题讨论】:
您可以使用array.push 将元素推送到数组上而不指定索引 见this 哦,你的意思是如果有一个相当于 PHP 的 javascriptarray_push
;)
【参考方案1】:
只需在 javascript 中使用Array.push
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]
Array.push on MDN
【讨论】:
【参考方案2】:来自w3schools
<script>
var fruits = ["Banana", "Orange", "Apple", "Mango"];
function myFunction()
fruits.push("Kiwi")
var x=document.getElementById("demo");
x.innerhtml=fruits;
</script>
【讨论】:
【参考方案3】:以编程方式,您只需“推送”数组中的一个项目:
var arr = [];
arr.push("a");
arr.push("b");
arr[0]; // "a";
arr[1]; // "b"
你不能按照你的建议去做:
arr[] = 1
是不是有效的 JavaScript。
【讨论】:
PHP 数组函数和速记技巧在 javascript 中绝对毁了我。【参考方案4】:我想找到一种方法,将值作为数组元素添加到变量或属性中,但这种方法尚不存在。 (很像 php 的 $var[] = 'foo'。)所以我四处打听,这就是我学到的。
变量:
var arr;
(arr = arr || []).push('foo');
属性:
var obj = ;
(obj.arr = obj.arr || []).push('foo');
||如果为真则返回左边,如果左边为假则返回右边。到 .push() 执行时,arr 是一个数组——如果它还没有的话。
【讨论】:
【参考方案5】:对于特殊情况你可以使用next(不带.push()):
var arr = [];
arr[arr.length] = 'foo';
arr[arr.length] = 'bar';
console.log(arr); // ["foo", "bar"]
【讨论】:
以上是关于javascript 可以在不指定 PHP 等键的情况下将元素添加到数组吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何在不明确指定主键的情况下使用 Dapper Extensions 将对象插入 PostGreSql?
数字电视的遥控器上有F1F2F3F4等键,并标以黄绿红等不同的色,这些键是啥作用的?