确定变量是否存在于 ES6 中的数组中

Determine If Variable Is Present in an Array in ES6

如何确定变量 status 是否存在于数组中并仅显示一次?

const responses = [
    {
        "productName": "Required"
    },
    null,
    {
        "status": "Remove invalid product"
    },
    {
        "status": "Remove invalid product"
    }
]


<div>{responses[2]?.status}</div>

预期输出

Remove invalid product

您可以使用 array.find() 来完成。试试这个代码,它对你有帮助!

function App() {
  const responses = [
    {
      "productName": "Required"
    },
    null,
    {
      "status": "Remove invalid product"
    },
    {
      "status": "Remove invalid product"
    }
  ];

  return (
    <div> checkResponses : {responses.find(x => { if (x && x.status == "Remove invalid product") return x.status }).status}</div>
  );
};
export default App;

我们只用一个函数就可以做到这一点,Array.find()。我们可以通过检查它是否等于函数内部的 Remove invalid product 来做到这一点。请参阅下面的示例。

const responses = [{
    "productName": "Required"
},
null,
{
    "status": "Remove invalid product"
},
{
    "status": "Remove invalid product"
}
];

console.log(responses.find(status => status?.status === 'Remove invalid product')?.status ? responses.find(status => status?.status === 'Remove invalid product').status : "No invalid product found");

希望对您有所帮助!

强文本

const responses = [
    {
        "productName": "Required"
    },
    null,
    {
        "status": "Remove invalid product"
    },
    {
        "status": "Remove invalid product"
    }
];

console.log(responses.find(variable => variable?.hasOwnProperty('status'))?.status);