我正在使用以下代码(从facebook' immutable.js页面中选取):
Immutable.Seq({a:1, b:1, c:1})
.flip().map(key => key.toUpperCase()).flip().toObject();
我试图找到flip()函数的定义位置。 检查Seq对象的属性,然后在将flip()应用于Seq对象后,它返回:
Seq [ '_object', '_keys', 'size' ]
Seq flip [ '_iter',
'size',
'flip',
'reverse',
'has',
'includes',
'cacheResult',
'__iterateUncached',
'__iteratorUncached' ]
我猜它是不可变库的一部分。 lodash具有类似的功能,但它不一样。
维克拉姆
答案 0 :(得分:1)
你在找这个吗?
mixin(KeyedIterable, {
// ### More sequential methods
flip() {
return reify(this, flipFactory(this));
},
答案 1 :(得分:0)
有关文档,请参阅https://facebook.github.io/immutable-js/docs/#/Collection.Keyed。
它会翻转键和值,因此{a:' x',b:' y'}变为{x:' a',y:&# 39; b'}