/* 匹配里面的每一个字符如果是数字则加上[] / var str='abc345efg'; var strArr = str.split(''); var reg = /\d/; var newArr = []; / forEach是es6的遍历数组的方法,不会对原数组造成改变 / / forEach方法回调里面不可以使用return / strArr.forEach(function(item,index){ if(reg.test(item)){ item = '['+item+']' } newArr.push(item) }) for(var i=0;i<str.length;i++){ if(reg.test(str[i])){ console.log(typeof str[i]) / 因为str是字符串不是对象,没有堆内存和栈内存 ,是基本数据类型*/ str[i] = '['+str[i]+']' console.log(typeof str[i]) } newArr.push(strArr[i]) } console.log(str);