IE6和IE8下對js字符串截取函數substr兼容性問題

通過測試發現,substr函數在IE6和IE8下起始位置不支持負數。
函數

例:txt = ‘Leiyu';測試

alert(txt.substr(-1,1));string

正常狀況下(測試經過IE9,IE11和FF)應該輸出‘u’,可是在IE6和IE8下卻輸出的爲‘L’。字符

解決辦法:參數

    alert(txt.substr(txt.length-1,1));

    還能夠使用substring()函數,substring()和substr()的區別是:substring()兩個參數分別爲起始位置,當開始位置爲負數時,從第一個字符開始截取,而substr()的兩個參數是起始位置和長度,當開始位置爲負數時,(IE9,IE11,FF默認從最後一位從前數,而IE6和IE8則從第一位開始截取)。

相關文章
相關標籤/搜索