本文仅展示平时可能会常用的一些方法,详细的可以参考www.ruanyifeng.com/blog/2017/0… 里面有各种详细的方法
引用
局部使用
import * as R from 'ramada'
全局使用
import * as R from 'ramada'
Vue.prototype.$R = R //this.$R
本文使用局部引用的方式
数组
- pluck:取出数组对象中某一属性的值形成新数组
var arr = [ { name:'a', value:'1' }, { name:'b', value:'2' }, { name:'c', value:'3' },]
R.pluck('name')(oldArr) // [a,b,c]
R.pluck('value')(oldArr) // [1,2,3]
2.head:返回数组第一个成员 last:返回数组最后一个成员 tail:返回数组第一个以外的所有成员 init:返回数组最后一个以外的所有成员
var arr = [1, 2, 3]
var str = 'abc'
R.head(arr) //1
R.last(arr) //3
R.head(str) //a
3.prepend:在数组前面添加成员 append:在数组后面添加成员
var arr = [1, 2, 3]
R.prepend(0)(arr) //[0, 1, 2, 3]
4.join: 数组转字符串,并用分隔符连接
var arr = [1, 2, 3]
arr.join(',')(arr) //'1,2,3'
5.filter: 定义一个函数,筛选出符合的成员
var arr = [1,2,3,4,5]
var moreTwo = x => x > 2
R.filter(moreTwo)(arr)
6.concat:将两个数组合并成一个
var arr1 = ['a','b','c']
var arr2 = [1, 2, 3]
R.concat(arr1)(arr2) //['a','b','c', 1, 2, 3]
7.zipObj: 两个数组合并成对象
var arr1 = ['a','b','c']
var arr2 = [1, 2, 3]
R.zipObj(arr1)(arr2) //{a:1, b:2, c:3}
8.map:对整个数组中的成员进行处理
var arr = [1, 2, 3, 4, 5]
var addFive = x => x + 5
R.map(addFive)(arr) //[6, 7, 8, 9, 10]
对象
1.propEq:返回一个数组中满足条件的数组
var obj = [
{id:1, name:'a', value:12},
{id:2, name:'b', value:10},
{id:3, name:'c', value:12},
]
var res = R.propEq('value', 12)
R.filter(res)(obj) //[{id:1, name:'a', value:12},{id:3, name:'c', value:12}]
2.keys:返回对象的中key形成新的数组
var obj = {name:'a',id:1}
R.keys(obj) //['name','id']