forEach map fillter
都不改变原数组
filter和map生成新数组。。
foreach callback每个元素。。。主要用于对每个元素做一下处理。。。
for循环则是没有callback的循环元素。。
let aa = [2,3,5,1] let bb = aa.map(item=> 2*item) aa [2, 3, 5, 1] bb [4, 6, 10, 2] let cc = aa.forEach(item=>2*item) aa [2, 3, 5, 1] cc undefined let dd = aa.filter(item=>item>3) aa [2, 3, 5, 1] dd [5]
changeMyTextarea(v) { let a = v.target.value let b = a.replace(/\n/g, ',') let c = a.split(/[\r\n]+/).join(',') let e = a .replace(/^[\r\n\s\uFEFF\xA0]+|[\r\n\s\uFEFF\xA0]+$/g, '') .split(/[\r\n]+/) .map(e => e.trim()) .filter(Boolean) .join(',') console.log('a is..\n', a, '\nb is ..\n', b, '\ncis ..', c, '\ne is ..', e) },