trim、trimStart、trimEnd分别去除字符串首尾、开头、结尾的空白字符(含空格、制表符、换行符等),均返回新字符串且不修改原串;trimStart等价trimLeft,trimEnd等价trimRight;不处理中间空白,不支持自定义字符删除。

JavaScript 字符串的 trim、trimStart 和 trimEnd 方法用于去除字符串首尾(或单侧)的空白字符,包括空格、制表符(\t)、换行符(\n)、回车符(\r)、垂直制表符(\v)、换页符(\f)以及 Unicode 空白字符(如 、\u2000–\u200A 等)。
trim:同时去除开头和结尾的空白
调用 str.trim() 会返回一个新字符串,原字符串不变(字符串在 JS 中是不可变的)。
例如:
const str = " \t\n Hello World \r\n\t ";console.log(str.trim()); // "Hello World"
trimStart(或 trimLeft):只去除开头空白
trimStart() 是标准方法名,trimLeft() 是别名(仍可用,但建议用 trimStart)。
立即学习“Java免费学习笔记(深入)”;
它只清理左侧(开头)的空白,保留右侧所有内容。
例如:
const str = " \t\n Hello World \r\n\t ";console.log(str.trimStart()); // "Hello World \r\n\t "
trimEnd(或 trimRight):只去除结尾空白
trimEnd() 是标准方法名,trimRight() 是其别名。
它只清理右侧(结尾)的空白,开头部分原样保留。
例如:
const str = " \t\n Hello World \r\n\t ";console.log(str.trimEnd()); // " \t\n Hello World"
注意事项和常见情况
- 这些方法**不修改原字符串**,始终返回新字符串,需显式赋值才能保存结果
- 它们只处理“空白字符”,不会删除中间的空格或制表符。例如
"a b c".trim()还是"a b c" - 对空字符串、全空白字符串均安全:
" ".trim()返回"" - 不支持传入自定义字符(如想删掉所有
"-"或"*"),需用正则(.replace(/^[-\s]+|[-\s]+$/g, ''))或手动实现 - 兼容性良好:Chrome 66+、Firefox 61+、Safari 12+、Edge 79+;Node.js 10+ 全支持。旧环境可用 polyfill 或
.replace(/^\s+|\s+$/g, '')模拟trim


















