Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.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_Reactjs_Object_Destructuring - Fatal编程技术网

Javascript 分解回退以防止未定义的错误?

Javascript 分解回退以防止未定义的错误?,javascript,reactjs,object,destructuring,Javascript,Reactjs,Object,Destructuring,我有一个数组列表,可以执行以下操作: const { id } = myArray.find( (obj) => obj === true) 如果id不存在,它将抛出错误。如何在使用解构的同时防止错误?我想将逻辑保持在一行。这里的问题是,如果条件没有实现,则返回未定义的: 数组中满足提供的测试函数的第一个元素的值。否则,将返回未定义的 因此,您可能可以使用|运算符来检查是否有从.find()返回的值,或者可以在运算符的右侧替换为空对象{} 一个班轮的选项可能如下所示:

我有一个数组列表,可以执行以下操作:

const { id } = myArray.find(
        (obj) => obj === true)
如果
id
不存在,它将抛出错误。如何在使用解构的同时防止错误?我想将逻辑保持在一行。

这里的问题是,如果条件没有实现,则返回
未定义的

数组中满足提供的测试函数的第一个元素的值。否则,将返回未定义的

因此,您可能可以使用
|
运算符来检查是否有从
.find()
返回的值,或者可以在运算符的右侧替换为空对象
{}

一个班轮的选项可能如下所示:

const myArray=[
{id:12},
{id:13},
{id:14}
];
const{id}=myArray.find(e=>e.id==17)|{;

console.log(id)
undefined
情况下,您可以指定默认值,如
const{id=10}={id:undefined}
。不确定这是否有帮助。