工作中常用的数据处理

原生jsAPI


数组:map、filter、find、forEach、reduce、concat、push、unshift、pop、slice、splice、json、reserver、sort、include


map: 用于数组数据结构渲染

{i.questionOptionVOS.map((j, index) =>        

    <dd key={index} style={ i.answer.indexOf( j.optionCode ) === -1  ?  { color:''} : {  color: '#1A8CFE' }} >    

          {j.optionCode}:{j.optionName}      

    </dd>  ),)}

map: 用于数组数据遍历生成新数组/遍历数组

[1,2,3]/[{name:1,id:2},{name:1,id:2},{name:1,id:2}].map(i => ({name:i.name,id:i.id,sex:xxx}))

filter:常用于过筛数组数据

[1,2,3,4]/[{name:1,id:2},{name:1,id:3},{name:1,id:2}].filter(i => i%2/i.id%2)

find:常用于查找数组数据

[1,2,3,4]/[{name:1,id:2},{name:1,id:3},{name:1,id:2}].find(i => i===1/i.name === 1);

forEach:常用于数组数据遍历

[1,2,3]/[{name:1,id:2},{name:1,id:2},{name:1,id:2}].forEach(i => console.log(i))

reduce:常用于数据的累加

[1,2,3,4].reduce((curr,sum) => curr+sum,0)

reduce:与concat结合使用扁平二位数组

concat:常用于数组的合并(浅拷贝)

[[1,2],2,[3,4]].reduce((curr,sum) => curr.concat(sum),[])

[[1,2],2,[3,4]].flat(1)    //也可以使用flat实现扁平数组 

push、unshift、pop:用于数组(栈)的尾插入、头插入以及尾删除

var arr = [1,2,3];

arr.push(4);

arr.unshift(0);

arr.pop()  //返回删除的值

slice:用于数组的截取

var arr = [1,2,3];

arr.slice(0,2);  //开始位置,结束位置之前 返回截取的数组,不改变原数组

arr

splice:用于数组的新增、删除、插入

var arr = [1,2,3]

arr.splice

字符串:split、slice、replace


split:用于字符串分割

's/p/l/i/t'.split('/')

slice: 用于字符串截取

var str = 'slice'

str.slice(0,3);

str

replace: 用于字符串的替换(通常结合正则使用)

str.replace('e','t')

str

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容