2
A
回答
5
您可以使用splice()
''.split(',').splice()
//[]
這個例子適用於您的問題:
function returnArr(str){
return !str ? [] : str.split(',')
}
returnArr('1,2,3')
// ['1','2','3']
returnArr('')
//[]
+0
但是我仍然想要'p,q,r'.split(',')。splice()'將其拆分爲3個元素的數組 – mortensen
+0
但是如果實際上有非空字符串,會中斷;這看起來像是一個特殊情況,只需檢查一個空字符串就可以輕鬆處理。 –
+0
@mortensen我編輯了我的答案。 –
0
0
分(試行)總是試圖分裂成碎片,所以你可以嘗試:
l='';
list=(l=='')?[]:l.split(',');
總是適用於
l='p,q,r';
list=(l=='')?[]:l.split(',');
你也可以編寫一個新的分割方法:
String.prototype.split2 = function (ch) {
return (this=='')?[]:this.split(ch)
}
所以土特產品可以嘗試:
''.split2(','); //result: []
'p,q,r'.split2(','); //result: ['p','q','r']
0
我想這應該這樣做;
console.log(''.split(',').reduce((p,c) => c ? p.concat(c) : p ,[]));
console.log("test1,test2,".split(',').reduce((p,c) => c ? p.concat(c) : p ,[]));
相關問題
- 1. 斯普利特和特定字符添加到C#字符串
- 2. 的BigQuery:斯普利特錯誤()返回
- 3. 羣組api返回空字符串
- 4. mysqli_real_escape_string()返回空字符串
- 5. Textbox.value返回空字符串
- 6. p:inputTextarea返回空字符串
- 7. file_get_contents返回空字符串
- 8. WTSQuerySessionInformation返回空字符串
- 9. jHtmlArea返回空字符串
- 10. get_FOO_display返回空字符串
- 11. selection.toString()返回空字符串
- 12. openssl_encrypt返回空字符串
- 13. Page.User.Identity.Name返回空字符串
- 14. Edittext返回空字符串
- 15. getFormAction()返回空字符串
- 16. mcisendstring返回空字符串
- 17. getline返回空字符串
- 18. Gridvew.RenderControl返回空字符串
- 19. c_str()返回空字符串
- 20. List.OrderBy返回空字符串
- 21. C#字符串 - 斯普利特Pascal大小寫
- 22. 的Javascript:斯普利特和記號化提供的字符串
- 23. 爪哇 - 斯普利特,並從字符串
- 24. PowerShell的 - 斯普利特,添加和連接字符串
- 25. 斯普利特用雙引號-Java字符串
- 26. 斯普利特地址字符串爲R中
- 27. 巴什 - 斯普利特DIR串
- 28. 爪哇 - 斯普利特2字符串,並將其存儲在一個字符串數組
- 29. 斯普利特最後空間,包括在Java
- 30. 斯普利特空白僅如果不通過[,<,{ or ],>,}
自己寫的'split'更換和破壞兼容性?如果你在''上分割一個非空字符串,'你會得到一個包含原始字符串的數組,就像這裏一樣。 –