Javascript 数组查找,无法读取未定义的属性长度
如何检查没有长度的选项?一些Javascript 数组查找,无法读取未定义的属性长度,javascript,Javascript,如何检查没有长度的选项?一些选项有选项其他没有 当我检查options.length==0 const { group, data, year } = args; return ( data .find(element => { return element.id == year; }) .options.find(element => { return element.id ==
选项
有选项
其他没有
当我检查options.length==0
const { group, data, year } = args;
return (
data
.find(element => {
return element.id == year;
})
.options.find(element => {
return element.id == group;
}).options.length == 0
数据:
我认为最好的方法是检查变量是否已定义。您可以通过以下方式实现这一点:
if(typeof(data.options) !== 'undefined')
//do something e.g: check if data.options.length != 0
让我知道这是否适合您。您能显示您正在处理的数据类型吗?数组的
find
返回元素的值,而不是数组如果没有嵌套的选项,什么是预期的结果?但是data
是一个数组,它永远不会有选项
属性,如果他不知道他将拥有多少嵌套的“选项”,他可以使用递归在整个数组中迭代,仍然可以应用上面的解决方案。
if(typeof(data.options) !== 'undefined')
//do something e.g: check if data.options.length != 0