2017-07-26 54 views
0

我有以下字符串:使用Javascript - 斯普利特用逗號(最好的方法)分隔字符串

蘋果,香蕉,橘子

,我想只得到該字符串的第一個字和第一個逗號之前:這是蘋果

對於

在這個例子中,我也做了以下:

var string = "apple, banana, orange"; 
var splitedArray = string.split(','); 
console.log('This should show it ', splitedArray[0]) 

它工作正常,但我想知道是否存在更好的方法。

+0

這條路是萬萬罰款。 –

+0

'string.substring(0,string.indexOf(','))'? – TryingToImprove

回答

3

而不是整個字符串映射到一個數組,你可以只使用substring togther與indexOf

var str = "apple, banana, orange"; 
var firstWord = str.substring(0, str.indexOf(',')) 

substring將您的字符串FRA指數A到indexB的一部分,並indexOf會給您首次出現模式的索引(在本例中爲,)。

我想這種做法會更快,因爲它沒有在整個字符串需要循環


https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/substring

的indexOf https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf

+0

乾淨整潔,但我想了解更多,如果你不介意發生了什麼事情,如果我想用你的方法得到「香蕉」,我相信它不會工作..? –

+0

@ HamzaL.I已更新答案。如果你想獲得第二個項目,你可以使用數組方式(簡單),或實現自己的算法來找到你需要的(更難)。 – TryingToImprove

1

是的,我也是這麼做的。對於短:string.split(",")[0]