背1,2,5
str.replace(/\ +/g, ""); // 去除 空格str.replace(/[\r\n]/g, ""); // 去除 换行符str.trim(); // 去除 前后空格
1.trim
var str = " ab cde "console.log(" abcde ", "原来", );console.log(str.trim()); //首尾
2.正则
var str = " ab cde "var b = str.replace(/(^\s*)|(\s*$)/g, "");console.log(b, "2");
3.封装为函数
与2正则同
function Atrim(str) {return (str || "").replace(/^\s+|\s+$/g, "");}console.log(Atrim(str));
4.封装函数与slice结合
function Btrim(str) {var str = str.replace(/^\s\s*/, ''),ws = /\s/,i = str.length;while (ws.test(str.charAt(--i)));return str.slice(0, i + 1);}console.log(Btrim(str));
5.双for循环
let str1 = " ab cde "function trim1(str1) {let start = 0let end = 0for (let i = 0; i < str1.length; i++) {if (str1[i] != ' ') {start = ibreak //跳出整个循环,不再继续进行 }}for (let i = str1.length - 1; i > 0; i--) {if (str1[i] != ' ') {end = i + 1break}}return str1.slice(start, end)}console.log(str1);console.log(trim1(str1))