最殘酷的事情!下面的代碼打印出'llo'而不是預期的'wo'。我得到了一些其他數字這樣令人驚訝的結果。我在這裏錯過了什麼?javascript子字符串
alert('helloworld'.substring(5, 2));
最殘酷的事情!下面的代碼打印出'llo'而不是預期的'wo'。我得到了一些其他數字這樣令人驚訝的結果。我在這裏錯過了什麼?javascript子字符串
alert('helloworld'.substring(5, 2));
你混淆substring()
和substr()
:substring()
預計兩項指標,而不是偏移量和長度。在你的情況下,索引是5和2,即字符2..4將被返回,因爲更高的索引被排除。
檢查substring
syntax:
子(從,到)
從必需。 開始提取的索引。第一個字符 位於索引0
到可選。該索引 在哪裏停止提取。如果忽略 ,它提取 字符串的其餘部分
我會給予你這有點奇怪。我自己不知道。
你想要做什麼是
alert('helloworld'.substring(5, 7));
alert('helloworld'.substring(5, 2));
上面的代碼是錯誤的,因爲第一個值是起點,從焦炭5是o
結束point.Eg移動和去爲char 2這是l
所以會得到所以你已經告訴它倒退。
昱歐想要的是
alert('helloworld'.substring(5, 7));
見下面的語法:
str.substring(indexA, [indexB])
如果indexA > indexB
,在substring()
功能行爲,如果論點相反。
這裏要考慮的文檔: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/substring
您在JavaScript中的三個選項:
//slice
//syntax: string.slice(start [, stop])
"Good news, everyone!".slice(5,9); // extracts 'news'
//substring
//syntax: string.substring(start [, stop])
"Good news, everyone!".substring(5,9); // extracts 'news'
//substr
//syntax: string.substr(start [, length])
"Good news, everyone!".substr(5,4); // extracts 'news'
這是我做了什麼,
var stringValue = 'Welcome to India';
// if you want take get 'India'
// stringValue.substring(startIndex, EndIndex)
stringValue.substring(11, 16); // O/p 'India'
+1提SUBSTR。 – 2010-01-01 16:58:22