首页 > 解决方案 > 如何指定数组索引?

问题描述

如何获取数组的索引?现在我执行“blockCreate”函数的结果是未定义,我认为这是因为我没有指定数组的索引,虽然我应该得到正确,如何自动指示数组的索引?

import React, { useState } from "react";
import "./styles.css";

export default function App() {
  const [array1, setArray1] = useState([{ number: 1 }]);
  const [array2, setArray2] = useState([{ number: 2 }]);

  const blockCreate = () => {
    return array1.find(items => {
      const bool = array2.find(i => i.number === items.number);
      console.log(bool);
    });
  };

  return (
    <div className="App">
      <div>{blockCreate()}</div>
    </div>
  );
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>

标签: javascriptarraysreactjs

解决方案


Array.find() 不返回布尔值,而是返回与条件匹配的第一个元素。https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find

你想要做的事情很模糊,但我认为你要找的是 Array.some() ,它返回一个布尔值。https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some


推荐阅读