标签:length 输出 splice 结果 电话 alt bsp png mic
export default (str) => { if(!str) return; // 建立电话号码键盘映射 let strMap = [‘‘, ‘‘, ‘abc‘, ‘def‘, ‘ghi‘, ‘jkl‘, ‘mno‘, ‘pqrs‘, ‘tuv‘, ‘wxyz‘]; // 把输入字符串按单字符分隔变成数组,234 => [2,3,4] let num = str.split(‘‘); // 保存键盘映射后的字符内容,如 23 => [‘abc‘, ‘def] let code = []; num.forEach(item => { if (strMap[item]) { code.push(strMap[item]) } }) let comb = (arr) => { // 临时变量用来保存前两个组合的结果 let temp = []; // 最外层的循环是遍历第一个元素,里层的循环是遍历第二个元素 for (let i=0, il = arr[0].length; i<il; i++){ for (let j=0, jl = arr[1].length; j<jl; j++) { temp.push(`${arr[0][i]}${arr[1][j]}`); } } arr.splice(0, 2, temp); if (arr.length > 1) { comb(arr); } else { return temp; } return arr[0]; } return comb(code); }
标签:length 输出 splice 结果 电话 alt bsp png mic
原文地址:https://www.cnblogs.com/wzndkj/p/11923423.html