如何遍历不可变并将其推入数组Javascript

时间:2020-10-20 11:56:12

标签: javascript arrays loops iteration immutable.js

我将表单字段值保存在一个不可变的对象中。
我使用getIn不可变函数来访问它。

例如,如果我必须访问字段,则使用const users = formFields.getIn(['0', value])
现在,我有一个变量

用户= 4`

这意味着,将有4个不可变的字段,我需要从中获取用户的年龄。

例如

  • 第一用户年龄将存储在formFields.getIn(['1', value])
  • 第二用户年龄将存储在formFields.getIn(['2', value])
  • 依此类推

如何根据用户变量遍历用户年龄列表?
我尝试过这样的事情:

const userAgeList = [];
if (users >0) {
  userAgeList.push(formFields.getIn([[i], value]));
}

使用上面的代码formFields.getIn([[i], value]),我不确定,因为该值实际上不在此值上。其位于formFields.getIn(['i', value])上。

我如何将循环变量i作为字符串传递,以便我可以获取字段值?

1 个答案:

答案 0 :(得分:0)

如果您所拥有的是包含List个对象的Map,则可以使用dates_table来循环所有值:

map

这将为您提供所需值的数组。
如果您只想取特定的const userAgeList = formFields .map(field -> field.get('value')) .toArray() ,请将其转换为数字,然后可以按照以下方式将skiptake组合在一起:

i

这将在const userAgeList = formFields .skip(i) .take(1) .map(field -> field.get('value')) .toArray() 位置返回一个单元素数组。