javascript截取字符串的最后几个字符
<p>在JavaScript中截取字符串一般是使用内置的substring()方法和substr()方法,这两个方法功能都很强大,也都能实现截取字符串中的最后几个字符。</p><p><span style="background-color: rgba(204, 255, 204, 1)">substring()方法</span></p>
<p>JavaScript中的String对象提供了一个substring(int from, int to)方法用于截取字符串中位置为from到to-1位置的字符。</p>
<p>因为字符串的字符位置是从0开始的,而substring(int from, int to)方法是前闭后开的,即。</p>
<p>同时to是可以省略的(多态),to缺省的情况下为截取到字符串的最后一位。</p>
<p>那么要截取字符串中的最后几个字符,就可以先获取字符串的长度,将字符串的长度-n作为substring()方法的第一参数,就能实现截取字符串最后的n个字符的效果。</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> str = 'i like yanggb'<span style="color: rgba(0, 0, 0, 1)">;
console.log(str.substring(str.length </span>- 6)); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> yanggb</span></pre>
</div>
<p>另外要注意的是,JavaScript中的String是不可变的类型,因此substring()方法并不会改变原字符串,而是返回了一个新的字符串。</p>
<div class="cnblogs_code">
<pre>console.log(str); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> i like yanggb</span></pre>
</div>
<p><span style="background-color: rgba(204, 255, 204, 1)">substr()方法</span></p>
<p>JavaScript中的String对象还提供了一个substr(int start, int length)方法用于截取字符串中从start位置开始length位数的字符。</p>
<p>常规的使用方法就不讲了,特殊的用法是这个方法的第一个参数start是支持负数的,负数表示从后往前第start位开始截取,比如start是-1的话,就表示从倒数第一位开始截取,依次类推。</p>
<p>那么,如果我们要截取字符串中的最后n个字符,就可以将start参数设置为-n,然后length也为n即可。</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> str = 'i like yanggb'<span style="color: rgba(0, 0, 0, 1)">;
console.log(str.substr(</span>-6, 6)); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> yanggb</span></pre>
</div>
<p>同样的,substr()方法也会改变原字符串,而是返回了一个新的字符串。</p>
<div class="cnblogs_code">
<pre>console.log(str); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> i like yanggb</span></pre>
</div>
<p>另外要特别提及的是,substr()方法的第二个参数length的取值范围要特别注意的。</p>
<p>1.当length为负数的时候,实际上就相当于0。</p>
<p>2.当start为负数的时候,length应该小于等于start的绝对值,大于也不会报错,只是不够严谨。</p>
<p>3.当start为0或正数的时候,length应该大于0且小于源字符串的长度-start,否则可能没有什么意义。</p>
<p> </p>
<p>"听说喜欢一个人的期限是四个月。"</p>
</div>
<div id="MySignature" role="contentinfo">
你要去做一个大人,不要回头,不要难过。<br><br>
来源:https://www.cnblogs.com/yanggb/p/11563178.html
頁:
[1]