2014-11-04 58 views
5

我已經定義並填充了一個名爲vertices的數組。我可以將輸出打印到JavaScript控制檯,如下所示:替換字符串數組中的字符Javascript

["v 2.11733 0.0204144 1.0852", "v 2.12303 0.0131256 1.08902", "v 2.12307 0.0131326 1.10733" ...etc. ] 

但是我希望從每個元素中刪除'v'字符。我已經通過使用如下面的.replace()功能試圖這樣:

var x; 
for(x = 0; x < 10; x++) 
{ 
    vertices[x].replace('v ', ''); 
} 

在打印時該陣列到控制檯這個代碼後作爲前我看到相同的輸出,與所述「V的仍然存在。 誰能告訴我如何解決這個問題?

+0

請記住,使用字符串作爲第一個參數調用'replace',您將只替換第一個實例。在這種情況下,它看起來會很好,但是在將來,如果你想要「全部替換」,第一個需要是正則表達式,比如'someString = someString.replace(/ old/g, 「new」);' - 因爲我通常想要「替換全部」,所以我習慣於在調用'replace'時總是使用正則表達式語法。 – 2014-11-04 18:30:24

回答

9

字符串是不變的,所以你只需要重新分配他們的價值:

vertices[x] = vertices[x].replace('v ', ''); 
+0

謝謝!我應該已經完成​​了。 – petehallw 2014-11-04 18:29:48

4

應該

vertices[x]=vertices[x].replace('v ', ''); 

因爲更換回報值,不會改變初始串。

0
vertices[x] = vertices[x].replace('v ', '');