Ramda 之 remove()
栏目: JavaScript · 发布时间: 5年前
内容简介:若要從 Array 擷取其中一部分,但我們無法如假如我們一開始不知道 Ramda 的
若要從 Array 擷取其中一部分,但我們無法如 slice()
指定要的部分,只能指定不要的部分,此時我們可使用 Ramda 的 remove()
。
Functional
import { slice, without } from 'ramda'; let data = [1, 2, 3, 4, 5]; let remove = (start, count, arr) => without(slice(start, start + count, arr), arr); console.dir(remove(1, 3, data));
假如我們一開始不知道 Ramda 的 remove()
,也可透過 slice()
與 without()
組合:
slice() without()
remove()
Value
import { remove } from 'ramda'; let data = [1, 2, 3, 4, 5]; console.dir(remove(1, 3, data));
事實上 Ramda 已經內建 remove()
,可直接使用。
remove()
Number → Number → [a] → [a]
直接指定 Array 中不要的部分擷取部分 Array
Number
:Array 的 start index
Number
:Array 的 element count
[a]
:Data 為 array
[a]
:所截取的 array
Object
import { remove } from 'ramda'; let data = [ { firstName: 'Sam', lastName: 'Xiao'}, { firstName: 'Kevin', lastName: 'Yang'}, { firstName: 'Jimmy', lastName: 'Huang'}, { firstName: 'Jessie', lastName: 'Hsieh'}, { firstName: 'John', lastName: 'Wu'} ]; console.dir(remove(1, 3, data));
若 element 為 object, remove()
依然適用。
Conclusion
-
remove()
是與slice()
相對的 function:slice()
是指定要的部分,而remove()
是指定不要的部分
Reference
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。