多分これは愚かな質問ですが、とにかく。 Immutable.jsリストの任意の位置に要素を挿入するにはどうすればよいですか?
splice
method を探しています:
Spliceは、このIterableの領域を新しい値で置き換えることにより、新しいインデックス付きのIterableを返します。
splice(index: number, removeNum: number, ...values: any[])
index
を指定できる場所と、0
as removeNum
として、指定された位置に値を挿入します。
var list = Immutable.List([1,2,3,4]);
console.log(list.toJS()); //[1, 2, 3, 4]
var inserted = list.splice(2,0,100);
console.log(list.toJS()); //[1, 2, 3, 4]
console.log(inserted.toJS()); //[1, 2, 100, 3, 4]
デモ JSFiddle 。
実際にはlist.splice(index, 0, value)
と同義である insert メソッドを使用することもできますが、より直感的になり、読みやすさが大幅に向上します。
const myImmutableList = Immutable.fromJS(['foo', 'baz'])
const newList = myImmutableList.insert(1, 'bar')
console.log(newList.toJS()) //["foo", "bar", "baz"]