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