题目:给定字符串str,每n个字符添加一个符号separator,通过substring或splice实现。
语法
1)substring() 方法用于提取字符串中介于两个指定下标之间的字符。
语法
stringObject.substring(start,stop)
start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。
2)splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
注释:该方法会改变原始数组。
语法
arrayObject.splice(index,howmany,item1,.....,itemX)
index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX 可选。向数组添加的新项目。 实现
//第一种方法 function addComma(str,n,separator){ var tempArr = []; for (var i = str.length; i >= n; i=i-n) { tempArr.push(str.substring(i-n,i)); }; if(i>0){ tempArr.push(str.substring(0,i)); } str = tempArr.reverse().join(separator); return str; }
//第二种方法 function addComma1(str,n,separator){ var tempArr = []; var strArr = str.split(""); for (var i = strArr.length; i >= n; i=i-n) { strArr.splice(i-n,0,separator); }; str = strArr.join(""); return str; }
//测试 alert(addComma("fasdfas dafsdfsdf fadsfasdfa",6,"|"));