Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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_Arrays_Reactjs - Fatal编程技术网

Javascript 使用三元运算符检查数组中是否存在键

Javascript 使用三元运算符检查数组中是否存在键,javascript,arrays,reactjs,Javascript,Arrays,Reactjs,如果存在reportDate.parent,我当前正在使用三元运算符返回true。问题是它返回true,但对于某些返回值的数组,没有值属性,因此报告中断 { reportData.parent && ( <React.Fragment> <Report/> </React.Fragment> ) } 以下选项有效,因为它至少

如果存在
reportDate.parent
,我当前正在使用三元运算符返回true。问题是它返回true,但对于某些返回值的数组,没有
属性,因此报告中断

{
        reportData.parent && (
            <React.Fragment>
                <Report/>
            </React.Fragment>
        )
    }
以下选项有效,因为它至少有1个值:

parent: Array(3)
0: {dateTime: "05/09/2018", value: 2}
1: {dateTime: "16/06/2018"}
2: {dateTime: "19/03/2018"}
length: 3
在返回报表组件之前,我需要在此顶层执行检查,例如:

{
    reportData.parent.value === undefined && (
        <React.Fragment>
            <Report />
        </React.Fragment>
    )
}
{
reportData.parent.value==未定义&&(
)
}
我是否可以使用三元运算符或其他条件渲染方法

为了重申这一点,我希望报告仅在数组中至少有一个值时返回


更新:我只是想看看键(命名值)是否存在(不仅仅是数组中是否存在值)

如果
value
始终是您可以使用的编号
some

reportData.parent.some(a => !!a.value)
重申一下,我希望报告只有在至少有一份报告的情况下才能返回 数组中的值

你可以试试这个:

{
    reportData.parent.length > 0 && (
        <React.Fragment>
            <Report />
        </React.Fragment>
    )
}

您只需检查真实值即可

{
    reportData.parent.value && (
        <React.Fragment>
            <Report />
        </React.Fragment>
    )
}
{
reportData.parent.value&&(
)
}

.value不是路径而是键Yes,它将测试
value
是否真的存在,并相应地返回true或false。它在我的两个示例数组中都返回false,因为它查找的是.value,而该值不存在。请参考问题中的数组是的,这给出了数组的长度,我所有的数组都有一个长度,如果数组有一个名为value insideGot it的键,我想找到return truthy!那么,你必须遍历你的数组,使用myObj.hasOwnProperty('key')来检查一个对象自己的键,它只会在myObj上直接提供键的情况下返回true这听起来是正确的,问题是如何将它添加到我的三元运算符中?@TomRudge我已经更新了我的答案,请尝试一下,让我知道它是否如预期的那样工作。我以为这个解决方案会很接近,但它会抱怨。有些不是函数
{
    reportData.parent.value && (
        <React.Fragment>
            <Report />
        </React.Fragment>
    )
}