
trimは全角スペースも削除する
Rubyなどの言語だとtrimを使用すると全角スペースは削除しないが、JavaScriptだと全角スペースも削除される。
Rubyを書く人だとJavaScriptも書く人が結構多いので注意が必要だ。
const str = ' foo '
const strTrim = str.trim()
console.log(`「${str}」`)
// => 「 foo 」
console.log(`「${strTrim}」`)
// => 「foo」
全角スペースは削除しないようにする
全角スペースは削除しないようにするにはtrim()の全角スペースを削除しない版のtrimRuby()のようなメソッドを作成すれば良い。
String.prototype.trimRuby = function () {
return this.replace(/^[ \r\n\t\uFEFF\xA0]+|[ \t\r\n\uFEFF\xA0]+$/g, '');
};
const str = ' foo '
const strTrim = str.trimRuby()
console.log(`「${str}」`)
// => 「 foo 」
console.log(`「${strTrim}」`)
// => 「foo 」



