构建React配置文件的最佳方法是什么?

时间:2017-01-13 20:14:38

标签: javascript json reactjs redux

我正在使用React / Redux构建一个网站框架,其中网站的配置采用JSON格式并加载到Redux存储中。该配置包含其他设置(如网站名称和Google Analytics ID),导航结构(如主导航,页脚导航和任何其他导航)以及页面索引(最多可包含1000页)。

问题:构建此配置的最佳方法是什么(特别是页面索引),以便最有效地解析它?

我有两种方法可以做到这一点:

  1. 单个相同对象数组

    [
      {
        "id": 1,
        "url_slug": "about-us",
        "page_title": "About Us",
        "template": "about"
      },
      {
        "id": 2,
        "url_slug": "careers",
        "page_title": "Careers at Company Name",
        "template": "default"
      }
    ]
    
  2. 使用这种方法,数据很好地打包在一个可预测的结构中,但是我需要解析一次数组(每页加载)以找到我想通过url_slug引用的对象的索引。

    1. 具有唯一键的对象

      {
        "about-us": {
          "id": 1,
          "page_title": "About Us",
          "template": "about"
        },
        "careers": {
          "id": 2,
          "page_title": "Careers at Company Name",
          "template": "default"
        }
      }
      
    2. 使用这种方法,我可以根据其键轻松地引用我想要的对象,但是对于一个大型站点,它将导致一个具有数百个键的对象。

      那么,哪种性能最佳?它有所作为吗?

1 个答案:

答案 0 :(得分:0)

在这种情况下,使用数组而不是对象没有任何实际优势。对于拥有数百个密钥的单个对象而言,没有什么比这更糟的了。比单个阵列有数百个元素 - 可能除了这些键占用内存,但是"数百个"密钥最多可以加起来为千字节。

如果对象的顺序很重要,请使用数组。如果要随机访问(即通过某些唯一键访问),请使用对象。 (如果订单很重要您想要随机访问,那么您需要做更多的工作,但看起来并非如此。)