js原生方法
trim()
方法从字符串的两端清除空格,返回一个新的字符串,而不修改原始字符串。此上下文中的空格是指所有的空白字符(空格、tab、不换行空格等)以及所有行终止符字符(如 LF、CR 等)。
注意:trimLeft
是trimStart
的别名,同理,trimRight
是trimEnd
别名,最好使用trimStart
以及trimEnd
let name = " 你好 我是js新提供去除空格 ";
console.log("去除左右空格是:" + name.trim() + "方法");
console.log("去除开始空格是:" + name.trimStart() + "方法");
console.log("去除结束空格是:" + name.trimEnd() + "方法");
console.log("去除左空格是:" + name.trimLeft() + "方法");
console.log("去除右空格是:" + name.trimRight() + "方法");
正则表达式替换
1、不处理中间的空格
注:\s
匹配一个空白字符,包括空格、制表符、换页符和换行符。等价于 [\f\n\r\t\v\u0020\u00a0\u1680\u180e\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]
。
\n
匹配一个换行符
\r
匹配一个回车符
\t
匹配一个水平制表符,相当于按了一次Tab键
\v
匹配一个垂直制表符
\f
匹配一个换页符
console.log("去除开始空格是:" + name.replace(/(^\s*)/g, "") + "结束");
console.log("去除结束空格是:" + name.replace(/(\s*$)/g, "") + "结束");
console.log("去除左右空格是:" + name.replace(/(^\s*)|(\s*$)/g, "") + "结束");
2、去除掉全部空格
// 方案一 直接替换
function trimAll1(str) {
var reg = /[\s]*/g;
if (typeof str === "string") {
return str.replace(reg, "");
} else {
alert("参数类型不是字符串");
}
}
// 方案二 转数组再合并
function trimAll2(ele) {
if (typeof ele === "string") {
return ele.split(/[\s]*/g).join("");
} else {
alert("参数类型不是字符串");
}
}
console.log("去除空格是:" + trimAll1(name) + "结束");
console.log("去除空格是:" + trimAll2(name) + "结束");