Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.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 为什么函数不能读取循环中的数组元素?_Javascript_Google Apps Script_Google Sheets - Fatal编程技术网

Javascript 为什么函数不能读取循环中的数组元素?

Javascript 为什么函数不能读取循环中的数组元素?,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我有一个简单的函数,只检查数组的第四个元素是否更大 不知何故,我得到了一个错误TypeError:无法读取未定义的属性“3” 我不知道为什么。。。有人能告诉我这个函数有什么问题吗 var pasujace=[ [“空白”、“A4205022”、“L00063746”、1000.0], [“空白”、“A4205022”、“L00063743”、100.0], [“空白”、“A4205022”、“L00063743”、100.0], [“空白”、“A4205022”、“L00056983”、300

我有一个简单的函数,只检查数组的第四个元素是否更大

不知何故,我得到了一个错误
TypeError:无法读取未定义的属性“3”

我不知道为什么。。。有人能告诉我这个函数有什么问题吗

var pasujace=[
[“空白”、“A4205022”、“L00063746”、1000.0],
[“空白”、“A4205022”、“L00063743”、100.0],
[“空白”、“A4205022”、“L00063743”、100.0],
[“空白”、“A4205022”、“L00056983”、300.0]
];
var roznica=50;
函数lastOne(arr,num){
var nowa=[];
对于(变量i=0;inum){
nowa.push(arr[i]);
}
}
返回诺瓦
}
const last=lastOne(帕苏贾斯,罗兹尼卡);
console.log(最后一个)
使用过滤器

var pasujace=[
[“空白”、“A4205022”、“L00063746”、1000.0],
[],
[“空白”、“A4205022”、“L00063743”、100.0],
[“空白”、“A4205022”、“L00063743”、100.0],
[“空白”、“AAA”],
,
[“空白”、“AAA”、“缺失”],
[“空白”、“A4205022”、“L00056983”、300.0]
];
var roznica=100;
常量lastOne=(arr,num)=>arr.filter(项=>{
如果(!item | | item.length<3 | | isNaN(item[3]),则返回false;
返回项目[3]>num
});
const last=lastOne(帕苏贾斯,罗兹尼卡);
console.log(最后一个)
使用过滤器

var pasujace=[
[“空白”、“A4205022”、“L00063746”、1000.0],
[],
[“空白”、“A4205022”、“L00063743”、100.0],
[“空白”、“A4205022”、“L00063743”、100.0],
[“空白”、“AAA”],
,
[“空白”、“AAA”、“缺失”],
[“空白”、“A4205022”、“L00056983”、300.0]
];
var roznica=100;
常量lastOne=(arr,num)=>arr.filter(项=>{
如果(!item | | item.length<3 | | isNaN(item[3]),则返回false;
返回项目[3]>num
});
const last=lastOne(帕苏贾斯,罗兹尼卡);

console.log(最后一个)
。我必须将每个数组中的前三项更改为字符串,这样才能使其成为有效代码。你认为这是因为google sheets吗?我认为这是因为这里没有显示的内容。也许我最好的猜测是数组有一个空插槽。完整数组由这样的数组组成
[HAT,A4205022,L00063746,1000.0,,1161P38051,,4720021465]
所以有空插槽,但在元素之后我想检查我们为您添加了引号。。。现在能用了吗?你能不能把它更新成一个更相关的例子,看起来像你正在测试的?。我必须将每个数组中的前三项更改为字符串,这样才能使其成为有效代码。你认为这是因为google sheets吗?我认为这是因为这里没有显示的内容。也许我最好的猜测是数组有一个空插槽。完整数组由这样的数组组成
[HAT,A4205022,L00063746,1000.0,,1161P38051,,4720021465]
所以有空插槽,但在元素之后我想检查我们为您添加了引号。。。现在能用了吗?请您将其更新为一个更相关的示例,看起来像您正在测试的内容。OP描述的问题可能是由于
arr
没有元素,而不是元素是长度小于3的数组。无论缺少的元素是空插槽还是文本
null
未定义
,都会改变处理方式。此外,完全有可能通过更改
arr
的创建方式来修复。使用此解决方案,我得到了
TypeError:无法读取未定义的
的属性“length”,因此我想这不是代码再次更新以处理丢失的entries的问题。它现在正在工作,非常感谢!OP描述的问题可能是由于
arr
没有元素,而元素是长度小于3的数组。无论缺少的元素是空插槽还是文本
null
未定义
,都会改变处理方式。此外,完全有可能通过更改
arr
的创建方式来修复。使用此解决方案,我得到了
TypeError:无法读取未定义的
的属性“length”,因此我想这不是代码再次更新以处理丢失的entries的问题。它现在正在工作,非常感谢!