代码之家  ›  专栏  ›  技术社区  ›  Luiz Carvalho

使用键提取子对象,并使用javascript中未使用的键创建数组

  •  0
  • Luiz Carvalho  · 技术社区  · 6 年前

    我需要从中提取子对象 state 对象使用 fields 数组,witch包含我要提取的密钥。

    之后,我需要一个包含未使用密钥的数组。

    我的输入对象

    state = {id: '123', number: '456', extra_field: 'value'}
    fields = ["id", "number", "identifier"]
    

    想要的结果

    missing_fields = ['identifier']
    data = {id: '123', number: '456'}
    

    我正在使用 lodash ,如果是util!

    1 回复  |  直到 6 年前
        1
  •  1
  •   s.d    6 年前

    要选择具有特定关键帧的对象,请使用 _.pick :

    const data = _.pick(state, fields);
    

    要查找丢失的密钥,请使用 _.difference 字段中的状态键数:

    const missing = _.difference(fields, _.keys(state));