我給自己寫了一個函數,將字符串轉換成縮寫,目前它相當長,並且區分大小寫。縮短的JavaScript功能
我需要一種方法縮短它,所以它的工作時間100%。目前,如果其中一個拆分單詞有大寫字母,如果一個單詞以拆分單詞結尾,就會出現問題。
我拆分的單詞基本上是我刪除的單詞(因爲大多數公司並不包括它們)。它們包括:
- 和
- 的
- 爲
- 到
此外,我除去他們的方法是使用分割和結合(str.split('and ').join('')
)的對我來說似乎並不是最簡單的方法。
除了這些問題,它工作正常。任何人都可以幫我縮小功能並解決問題嗎?謝謝。
功能:
String.prototype.toAbbrev = function() {
var s = [];
var a = this.split('and ').join('').split('of ').join('').split('the').join('').split('for ').join('').split('to ').join('').split(' ');
for (var i = 1; i < a.length + 1; i++) {
s.push(a[i - 1].charAt(0).toUpperCase());
}
return s.join('.');
}
輸出上測試公司
The National Aeronautics and Space Administration -> N.A.S.A The National Roads and Motorists' Association -> N.R.M.A Royal Society for the Prevention of Cruelty to Animals -> R.S.P.C.A
如何使用正則表達式替換?你可以使用'i'修飾符使其不區分大小寫。 – Barmar
你能告訴我一個例子嗎?我從來沒有使用過正則表達式。 @thefourtheye感謝您的編輯,忘記之前我發佈。 – Spedwards
不要爲此擴展字符串原型。在javascript中擴展原生原型通常非常令人不悅。只要有一個正常的功能 - 沒有錯。 –