最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

React?中在?map()?中使用條件跳出map的方法

 更新時間:2023年09月28日 10:46:29   作者:火焰兔  
這篇文章主要介紹了React?中在?map()?中使用條件跳出map的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

React 中在 map() 中使用條件:

  • 在數(shù)組上調(diào)用 map() 方法。
  • 使用 if 條件,如果條件滿足則顯式返回。
  • 否則返回不同的值或返回 null 以不呈現(xiàn)任何內(nèi)容。
export default function App() {
  const arr = [1, 2, 3, 4, 5, 6];
  return (
    <div>
      {arr.map((element, index) => {
        if (element % 2 === 0) {
          return <h2 key={index}>{element}</h2>;
        }
        return <h2 key={index}>X</h2>;
      })}
    </div>
  );
}

我們使用 Array.map 方法迭代一個數(shù)組。

我們傳遞給 map() 的函數(shù)將使用數(shù)組中的每個元素和當(dāng)前迭代的索引進行調(diào)用。

在每次迭代中,我們檢查元素是否可以被 2 整除,如果是,我們返回該元素,否則,我們返回 X。

如果您不需要渲染任何東西,則返回 null

如果你不想在 else 子句中渲染任何東西,你可以返回 null。

export default function App() {
  const arr = [1, 2, 3, 4, 5, 6];
  return (
    <div>
      {arr.map((element, index) => {
        if (element % 2 === 0) {
          return <h2 key={index}>{element}</h2>;
        }
        // ??? render nothing
        return null;
      })}
    </div>
  );
}

該示例呈現(xiàn)可被 2 整除的數(shù)字,否則不呈現(xiàn)任何內(nèi)容。

或者,我們可以使用三元運算符。

使用三元運算符在 map() 中使用條件

這是一個三步過程:

  • 在數(shù)組上調(diào)用 map() 方法。
  • 使用三元運算符檢查條件是否為真。
  • 如果條件為真,運算符返回冒號左邊的值,否則返回右邊的值。
export default function App() {
  const arr = [1, 2, 3, 4, 5, 6];
  return (
    <div>
      {arr.map((element, index) => {
        return element % 2 === 0 ? (
          <h2 key={index}>{element}</h2>
        ) : (
          <h2 key={index}>X</h2>
        );
      })}
    </div>
  );
}

我們使用了與 if/else 語句非常相似的條件三元運算符。

如果問號前的表達式求值為真值,則返回冒號左側(cè)的值,否則返回冒號右側(cè)的值。

換句話說,如果元素可以被 2 整除,我們返回元素,否則返回 X。

和前面的例子一樣,如果你想在 else 子句中什么都不返回,你就必須返回 null。

export default function App() {
  const arr = [1, 2, 3, 4, 5, 6];
  return (
    <div>
      {arr.map((element, index) => {
        return element % 2 === 0 ? <h2 key={index}>{element}</h2> : null;
      })}
    </div>
  );
}

我們在示例中使用了 key prop 的索引,但是,如果有的話,最好使用一個穩(wěn)定的唯一標(biāo)識符。

出于性能原因,React 在內(nèi)部使用 key 道具。 它幫助庫確保只重新呈現(xiàn)已更改的數(shù)組元素。

話雖如此,除非您處理成千上萬的數(shù)組元素,否則您不會看到任何明顯的差異。

在 React 中打破 map() 循環(huán)(map() 只是數(shù)組的一部分)

要跳出 map() 循環(huán):

  • 對數(shù)組調(diào)用 slice() 方法以獲取數(shù)組的一部分。
  • 對數(shù)組的一部分調(diào)用 map() 方法。
  • 遍歷數(shù)組的一部分。
export default function App() {
  const employees = [
    {id: 1, name: 'Alice', country: 'Austria'},
    {id: 2, name: 'Zadmei', country: 'China'},
    {id: 3, name: 'Carl', country: 'Canada'},
    {id: 4, name: 'Delilah', country: 'Denmark'},
    {id: 5, name: 'Ethan', country: 'Egypt'},
  ];
  // ??? map() first 2 elements of array
  return (
    <div>
      {employees.slice(0, 2).map((employee, index) => {
        return (
          <div key={index}>
            <h2>name: {employee.name}</h2>
            <h2>country: {employee.country}</h2>
            <hr />
          </div>
        );
      })}
    </div>
  );
}

Array.slice 方法不會修改原始數(shù)組,而是創(chuàng)建一個新數(shù)組(原始數(shù)組的淺表副本)。

我們將以下 2 個參數(shù)傳遞給 slice() 方法:

  • startIndex 要包含在新數(shù)組中的第一個元素的索引
  • endIndex 上去,但不包括這個索引

我們指定起始索引為 0,結(jié)束索引為 2,因此我們得到了包含元素 0 和 1 的數(shù)組的一部分。

即使我們提供給 Array.slice 方法的結(jié)束索引超過了數(shù)組的長度,該方法也不會拋出錯誤而是返回所有數(shù)組元素。

const arr = ['a', 'b', 'c'];
const first100 = arr.slice(0, 100);
console.log(first100); // ??? ['a', 'b', 'c']

我們試圖獲取一個數(shù)組的前 100 個元素,它只包含 3 個元素。

結(jié)果,新數(shù)組包含原始數(shù)組的所有 3 個元素。

Map() 只是數(shù)組的一部分,使用 filter()

我們還可以在調(diào)用 map() 之前使用 Array.filter 方法。

export default function App() {
  const employees = [
    {id: 1, name: 'Alice', country: 'Austria'},
    {id: 2, name: 'Zadmei', country: 'China'},
    {id: 3, name: 'Carl', country: 'Canada'},
    {id: 4, name: 'Delilah', country: 'Denmark'},
    {id: 5, name: 'Ethan', country: 'Egypt'},
  ];
  // ??? map() LAST 2 elements of array
  return (
    <div>
      {employees
        .filter(employee => {
          return (
            employee.country === 'Belgium' || employee.country === 'Denmark'
          );
        })
        .map((employee, index) => {
          return (
            <div key={index}>
              <h2>name: {employee.name}</h2>
              <h2>country: {employee.country}</h2>
              <hr />
            </div>
          );
        })}
    </div>
  );
}

我們傳遞給 filter() 方法的函數(shù)會針對數(shù)組中的每個元素進行調(diào)用。

在每次迭代中,我們檢查當(dāng)前對象是否具有等于比利時或丹麥的國家/地區(qū)屬性并返回結(jié)果。

filter() 方法返回一個僅包含回調(diào)函數(shù)返回真值的元素的數(shù)組。

在示例中,僅使用 id 為 2 和 4 的對象調(diào)用 map() 方法。

到此這篇關(guān)于React 中在 map() 中使用條件跳出map的文章就介紹到這了,更多相關(guān)React 在 map() 中使用條件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • react+antd樹選擇下拉框中增加搜索框

    react+antd樹選擇下拉框中增加搜索框

    這篇文章主要介紹了react+antd樹選擇下拉框中增加搜索框方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • React構(gòu)建簡潔強大可擴展的前端項目架構(gòu)

    React構(gòu)建簡潔強大可擴展的前端項目架構(gòu)

    這篇文章主要為大家介紹了React構(gòu)建簡潔強大可擴展的前端項目架構(gòu)實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • React找不到模塊“./index.module.scss”或其相應(yīng)的類型聲明及解決方法

    React找不到模塊“./index.module.scss”或其相應(yīng)的類型聲明及解決方法

    這篇文章主要介紹了React找不到模塊“./index.module.scss”或其相應(yīng)的類型聲明及解決方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • React組件中的this的具體使用

    React組件中的this的具體使用

    這篇文章主要介紹了React組件中的this的具體使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • React 中的雙緩存 Fiber 樹機制詳解

    React 中的雙緩存 Fiber 樹機制詳解

    本文詳細介紹了React中的雙緩存Fiber樹機制,包括概念、核心流程、優(yōu)勢以及面試中的常見問題和標(biāo)準(zhǔn)回答,通過"通俗+專業(yè)"的方式,幫助面試者全面理解React的性能優(yōu)化體系,掌握雙緩存Fiber樹的關(guān)鍵點,感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • React與Redux之?dāng)?shù)組處理講解

    React與Redux之?dāng)?shù)組處理講解

    這篇文章主要介紹了React與Redux之?dāng)?shù)組處理講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • React Fiber與調(diào)和深入分析

    React Fiber與調(diào)和深入分析

    Fiber可以理解為一個執(zhí)行單元,每次執(zhí)行完一個執(zhí)行單元,React Fiber就會檢查還剩多少時間,如果沒有時間則將控制權(quán)讓出去,然后由瀏覽器執(zhí)行渲染操作,這篇文章主要介紹了React Fiber架構(gòu)原理剖析,需要的朋友可以參考下
    2022-11-11
  • Component與PureComponent對比解析

    Component與PureComponent對比解析

    這篇文章主要為大家介紹了Component與PureComponent解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • 使用 React 和 Threejs 創(chuàng)建一個VR全景項目的過程詳解

    使用 React 和 Threejs 創(chuàng)建一個VR全景項目的過程詳解

    這篇文章主要介紹了使用 React 和 Threejs 創(chuàng)建一個VR全景項目的過程詳解,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • 詳解React中的setState執(zhí)行機制

    詳解React中的setState執(zhí)行機制

    setState是React組件中用于更新狀態(tài)的方法,是類組件中的方法,用于更新組件的狀態(tài)并重新渲染組件,本文給大家詳細介紹了React中的setState執(zhí)行機制,文中通過代碼示例介紹的非常詳細,需要的朋友可以參考下
    2023-12-12

最新評論

泰顺县| 墨脱县| 皮山县| 贡觉县| 柳河县| 九台市| 鄂托克前旗| 重庆市| 德格县| 海阳市| 呼伦贝尔市| 正镶白旗| 沾化县| 蛟河市| 天峨县| 蒙城县| 额敏县| 赤水市| 莒南县| 曲靖市| 绥中县| 延津县| 喀什市| 蓬安县| 罗平县| 盘山县| 罗平县| 三江| 扬州市| 巨野县| 井研县| 安多县| 扬中市| 内乡县| 福鼎市| 勐海县| 田林县| 大埔县| 黑水县| 萍乡市| 伊宁市|