首页 > 解决方案 > 如果对象或数组中不存在键,如何阻止 React 应用程序失败?

问题描述

如何在使用 .map 遍历数组之前检查键是否存在?

    import React from 'react';
    ReactDOM.render(

        myObj={
          "meat": {"main": ["Chicken", "Beef", "Lamb", "Pork"]}
        }

        const Dinner () =>{
        const course = 'main';
           return(
              <div>
                  //course might result in a lookup that doesn't exist
                  {myObj.meat[course].map((n) => n + '')}
              </div>
       );
    }
    export default Dinner;
    );

因为键(课程)是一个变量,它可能会导致不存在的查找,例如 myObj.meat['sillyKey'],这会导致我的应用程序失败。在这种情况下如何阻止应用程序失败?

非常感谢,

凯蒂

标签: arraysreactjsobjecterror-handlingkey

解决方案


您可以按如下方式实施保障措施:

{myObj.meat[course] && myObj.meat[course].map((n) => n + '')}


推荐阅读