我有一個可以包含都不可能包含空白列表的非常簡單的字符串:.trim()不是一個函數
string = "one, two,three ";
我想先拆由,
字符串創建三個數組串,然後使用.trim()
array = string.split(',').trim();
返回"one","two","three"
但是有時它失敗並返回一個錯誤消除任何空白.trim() is not a function
我讀了.trim()
返回一個新的字符串,而不是當前字符串的修剪版本。所以我用一個for循環做以上:
array = string.split(',');
for (var i = 0; i < array.length; i++) {
var item = array[i].trim();
array.push(item);
}
返回"one","two","three"
我的問題是,任何人都可以解釋爲什麼我收到錯誤只是偶爾?如果陣列從我的示例中永遠不會改變,並且任何人都可以爲我的修復提供更清晰的解
你應該每次都得到'TypeError:array.split不是一個函數',所以它永遠不會得到你所說的錯誤 –
''這會返回「one」,「two」,「three」 - 不,它不會...它也抱怨array.split不是一個函數 - 我建議如果你需要代碼的幫助,當你簡化它,確保它顯示相同的錯誤真正的代碼有 –
split()方法通過將字符串分隔成子字符串,將字符串對象分割成字符串數組,從[doc](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split) –