在JavaScript中填充数组
JavaScript: 我正在尝试填充一个数组在JavaScript中填充数组,javascript,arrays,Javascript,Arrays,JavaScript: 我正在尝试填充一个数组 var blocks = []; var blocksCount = 7; for (var columnIndex = 0; columnIndex < blocksCount; columnIndex++) { for (var rowIndex = 0; rowIndex < blocksCount; rowIndex++) { blocks[columnIndex][rowIndex] = 'Some Valu
var blocks = [];
var blocksCount = 7;
for (var columnIndex = 0; columnIndex < blocksCount; columnIndex++) {
for (var rowIndex = 0; rowIndex < blocksCount; rowIndex++) {
blocks[columnIndex][rowIndex] = 'Some Value';
}
}
var块=[];
var blockscont=7;
对于(var columndex=0;columndex
错误消息显示:未定义不是对象
要使其工作,我必须更改什么?在尝试将值分配给该数组的属性之前,必须将数组分配给
块[columnIndex]
。在尝试将值分配给该数组的属性之前,必须将数组分配给块[columnIndex]
。块[columnIndex]为其上的行索引指定值时,
未定义。不能为尚未定义的对象赋值。因此,当尚未定义columnIndex
时,即首次将其定义为空数组。你可以这样做
blocks[columnIndex] = blocks[columnIndex] || [];
var块=[];
var blockscont=7;
对于(var columndex=0;columndex 控制台日志(块)代码>块[columnIndex]
在为其上的行索引赋值时未定义。不能为尚未定义的对象赋值。因此,当尚未定义columnIndex
时,即首次将其定义为空数组。你可以这样做
blocks[columnIndex] = blocks[columnIndex] || [];
var块=[];
var blockscont=7;
对于(var columndex=0;columndex 控制台日志(块)代码>当前,您没有多维数组
var arr = [];
console.log(arr[0]);
将返回undefined
,此时您正试图分配新元素
您可以克服这个问题,在第一个for
循环语句中创建多维数组,并在原始块中创建新数组
blocks[columnIndex] = [];
然后可以将这两个值分配给多维数组
var arr = [];
console.log(arr[0]);
var块=[];
var blockscont=7;
对于(var columndex=0;columndex }
当前,您没有多维数组
var arr = [];
console.log(arr[0]);
将返回undefined
,此时您正试图分配新元素
您可以克服这个问题,在第一个for
循环语句中创建多维数组,并在原始块中创建新数组
blocks[columnIndex] = [];
然后可以将这两个值分配给多维数组
var arr = [];
console.log(arr[0]);
var块=[];
var blockscont=7;
对于(var columndex=0;columndex }
您可以使用数组的构造函数中的将函数传递到数组创建中。这意味着不需要对
循环执行)
const blockCount=7;
const block=Array.from({length:blockCount},(\ux,i)=>{
返回Array.from({length:blockCount},(\uj)=>'Some Value');
});
控制台日志(块)
您可以使用数组的构造函数将函数传递到数组创建中。这意味着不需要对
循环执行)
const blockCount=7;
const block=Array.from({length:blockCount},(\ux,i)=>{
返回Array.from({length:blockCount},(\uj)=>'Some Value');
});
控制台日志(块)
你能解释为什么吗?@Timo-因为你不能给未定义的
属性赋值,你能解释为什么吗?@Timo-因为你不能给未定义的
属性赋值什么是|
?它是一个或操作符,意思是,如果定义了|
左侧的值,则该值将分配给块[columnIndex]
,或者其值将是右侧的值,即[]
没有问题。很乐意提供帮助:)什么是|
。很乐意帮助:)您在哪里运行此代码?Chrome和Node 6.9.1 report都无法设置未定义的属性“0”。您在哪里运行此代码?Chrome和Node 6.9.1 report都无法设置未定义的属性“0”。