原生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