JavaScript String trim()

trim() 方法用來移除字串開頭和結尾的空白字元,回傳一個新字串,不會修改原字串。

語法:

str.trim()

用法:

'  Hello World  '.trim();   // 'Hello World'
'Hello World'.trim();       // 'Hello World'
'   '.trim();               // ''(空字串)
'\n\t Hello \n'.trim();     // 'Hello'

trim() 會移除這些空白字元:

  • 空格
  • Tab (\t)
  • 換行 (\n)
  • 回車 (\r)
  • 其他 Unicode 空白字元

trimStart() / trimEnd()

ES2019 新增了 trimStart()trimEnd(),分別只移除開頭或結尾的空白:

'  Hello World  '.trimStart();  // 'Hello World  '
'  Hello World  '.trimEnd();    // '  Hello World'
trimStart() 和 trimEnd() 也可以用別名 trimLeft() 和 trimRight()。

實際應用:

// 處理使用者輸入
function processInput(input) {
    return input.trim();
}

processInput('  user@example.com  ');  // 'user@example.com'

// 表單驗證
function validateEmail(email) {
    email = email.trim();
    if (email === '') {
        return '請輸入 Email';
    }
    if (!email.includes('@')) {
        return 'Email 格式不正確';
    }
    return null;  // 驗證通過
}

// 分割並清理字串
var input = '  apple ,  banana  , orange  ';
var fruits = input.split(',').map(function(s) {
    return s.trim();
});
// ['apple', 'banana', 'orange']
trim() 是 ES5 新增的方法。trim() 不會修改原字串,而是回傳一個新字串。