spemoon/fe-basic

[js] 写一个方法去掉字符串中的空格

Opened this issue · 1 comments

写一个方法去掉字符串中的空格,要求传入不同的类型分别能去掉前、后、前后、中间的空格


可以有多种解法,各种展开

/**
 * 去除空格
 * @param {*} str // 目标字符串
 * @param {*} dir // 方向,left/right/middle/both/(all或者不传)
 */
function trim(str, dir) {
    var reg;
    switch (dir) {
        case 'left':
            str = str.replace(/^\s+/g, '');
            break;
        case 'right':
            str = str.replace(/\s+$/g, '');
            break;
        case 'both':
            str = str.replace(/(^\s+)|(\s+$)/g, '');
            break;
        case 'middle':
            while(str.match(/(\S)\s+(\S)/g)) {
                str = str.replace(/(\S)\s+(\S)/g, '$1$2');
            }
            break;
        default:
            str = str.replace(/\s+/g, '');
            break;
    }
    return str;
}

var a = trim('    a   b  c    ', 'middle');