以前沒怎麼注意過js中這兩個函數的區別,直到被人問及,纔有所注意,以此便對這兩個函數進行了簡單的測試。
通過簡單測試,可以看到:
substr()第一個參數爲起始位置,第二參數是截取長度。
第一個參數爲負則取最後一個值爲起始下標(倒數第幾個,-1爲第一個),第二個參數爲負數則取不到值。
substring()第一個參數是截取的起始位置,第二個參數是結束位置。
兩個參數位置可以互換,自動從小的開始取,測試負數會自動變成0。
當第二個參數大於字符串長度時,兩個函數均會正常運行,截取從初始位置到最末位置的字符串。