当前位置:  开发笔记 > 编程语言 > 正文

在每个List.map迭代中递增uniqueID

如何解决《在每个List.map迭代中递增uniqueID》经验,为你挑选了1个好方法。

我正在尝试使用唯一标识符初始化一组元素。这些元素是初始模型的一部分。

我想到的是一个功能

initElement: Int -> InputElement -> Output
initElement id element = ...

将给定的id添加到给定的元素。现在,我在另一个函数中遍历这些元素,如下所示:

uid = 0    
elementsList = ...    
newList = List.map (initElement uid++) elementsList

我希望List.map在元素上的每次迭代时都增加该整数uid,以便每个元素都分配一个唯一的数字。++显然不起作用。

这是否可能,或者我是否考虑面向对象?我对函数式编程非常陌生。



1> Robin Luiten..:

一种选择是使用List.indexedMap

http://package.elm-lang.org/packages/elm-lang/core/3.0.0/List#indexedMap

它为您的函数作为第一个参数提供了一个不错的递增索引作为参数。然后可以使用它来适当地修改传入的uid

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有