Javascript 使用默认值和三元运算符查找时的可选链接方法

Javascript 使用默认值和三元运算符查找时的可选链接方法,javascript,Javascript,我正在尝试在array.find中实现可选的链接。请参阅下面的代码片段,我有以下三种情况 如果数组为空,我需要使用true//默认情况下为true 如果数组没有找到该对象,它也应该为true//empty作为true值 如果数组具有该对象,则应采用键属性值//true或false 但根据3的情况,如果键值为false,则取2 let数组=[{ id:1, 关键字:false }, { id:2, 关键:对 }] 让钥匙= array&&array.length? array.find( (项目

我正在尝试在array.find中实现可选的链接。请参阅下面的代码片段,我有以下三种情况

  • 如果数组为空,我需要使用true//默认情况下为true
  • 如果数组没有找到该对象,它也应该为true//empty作为true值
  • 如果数组具有该对象,则应采用键属性值//true或false
  • 但根据3的情况,如果键值为false,则取2

    let数组=[{
    id:1,
    关键字:false
    }, {
    id:2,
    关键:对
    }]
    让钥匙=
    array&&array.length?
    array.find(
    (项目)=>item.id==1
    )?.键| |“空为真值”:
    “默认为true”;
    
    console.log(key)
    如果左侧的值可以为false,则不能使用
    |
    。在访问
    .key

    const key = (array?.find(item =>
      item.id === 1
    ) || {key: "empty as true value"}).key;
    
    或者更好地使用:

    const key = array?.find(item =>
      item.id === 1
    )?.key ?? "empty as true value";