var data = this.state.registerMobile;
//My data will be like +91 345 45-567
data.replace('-','');
這不是刪除' - ',我試圖刪除空格也在兩者之間。它不工作。數據替換不起作用
var data = this.state.registerMobile;
//My data will be like +91 345 45-567
data.replace('-','');
這不是刪除' - ',我試圖刪除空格也在兩者之間。它不工作。數據替換不起作用
爲此,您需要將replace
的結果賦值給某個變量,替換不會對同一變量進行更改,它會返回修改後的值。因此,使用這樣的:
var data = this.state.registerMobile;
data = data.replace('-', '');
console.log('updated data', data);
檢查例如:
a = '+91 12345678';
b = a.replace('+', '');
console.log('a', a);
console.log('b', b);
String.prototype.replace()
不改變原來的字符串,但返回一個新的。第一個參數是以下任一操作:
的regexp(圖案)
甲RegExp對象或文字。一個或多個匹配被替換爲newSubStr或指定函數返回的值。
SUBSTR(圖案)
一個字符串,它由newSubStr代替。它被視爲逐字字符串,不會被解釋爲正則表達式。 只有第一次出現將被替換。
所以,如果你想更換hypens和空格,您必須使用以下命令:
var data = this.state.registerMobile;
data = data.replace(/\s|-/g, '');
感謝@Mayank舒克拉。我不知道我是如何犯這個愚蠢的錯誤。謝謝反正。 –