Imr*_*hsh 29 javascript arrays
为什么以下代码显示undefined?我们不允许创建具有单个值的数组吗?放置两个值不会显示此错误.这是Javascript的问题吗?
<script>
var tech = new Array(21);
alert(tech[0]);
</script>
Run Code Online (Sandbox Code Playgroud)
Rob*_*b W 48
new Array(21)创建一个长度为21的数组.如果要创建一个由数字组成的单值数组,请使用方括号[21]:
var tech = [ 21 ];
alert(tech[0]);
Run Code Online (Sandbox Code Playgroud)
如果要动态填充数组,请使用以下.push方法:
var filler = [];
for(var i=0; i<5; i++){
filler.push(i); //Example, pushing 5 integers in an array
}
//Filler is now equivalent to: [0, 1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)
当Array构造函数接收一个参数p(一个正数)时,将创建一个由p个元素组成的数组.此功能可用于重复字符串,例如:
var repeat = new Array(10);
repeat = repeat.join("To repeat"); //Repeat the string 9x
Run Code Online (Sandbox Code Playgroud)
通过new Array(21),您实际上正在创建一个包含21个元素的数组.
如果你想创建一个单值为'21'的数组,那么它是:
var tech = [21];
alert(tech[0]);
Run Code Online (Sandbox Code Playgroud)
您可以使用Array.of创建一个带有值的数组
let arr = Array.of(8)
console.log(arr)Run Code Online (Sandbox Code Playgroud)