js三个截取字符的方法

news/2024/7/19 15:01:10 标签: js

js中有三个截取字符的方法,分别是substring()、substr()、slice()。这三个方法都可以对字符串进行截取,并且返回一个新的字符串,原字符串不会改变。例如:

		res = 'abcdefgh';
        console.log(res);
        res1 = res.substr(1, 3);
        console.log(res1);
        res2 = res.substring(1, 3);
        console.log(res2);
        res3 = res.slice(1, 3);
        console.log(res3);

结果:而res的值不改变
在这里插入图片描述
虽然如此,他们也有不同点,如下:

  1. substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。start是必需的,即要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。
    子串中的字符数。必须是数值。如果省略了该参数,那么返回从 string 的开始位置到结尾的字串;
    string.substr(start,length)

  2. substring() 方法用于提取字符串中介于两个指定下标之间的字符,语法是:string.substring(start,stop),其中start(必须值)变量要求是一个非负的整数,规定要提取的子串的第一个字符在 string 中的位置。而stop是一个非负的整数,比要提取的子串的最后一个字符在 string 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。
    另外需要说明的是:如上述例子所示,

  • substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符;
  • 如果参数 start 与 stop 相等,那么该方法返回的就是一个空串;
  • 如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数;
  • 如果 start 和 stop 有负数,那么会把该参数自动转为0,然后继续上述规则;
  • 如果 start 和 stop 有正小数(负数直接进行第4条),那么会把该参数向下取整,然后继续上述规则。
  • 如果 start 和 stop 有字符串,那么会先进行parseInt(),如果转换结果为NaN,那么就转换为0,其余情况继续上述规则。
  1. slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
    slice() 方法返回的子串包括 start 处的字符,但不包括 end 处的字符;start到end的顺序始终是从左到右,如果最终start的位置在end的右边,那么返回空。
    转自此链接~

http://www.niftyadmin.cn/n/1263337.html

相关文章

实现水平居中的几个方法

块级元素实现水平居中利用margin:0 auto来实现,通常该块级元素要指定宽度;行内元素实现的方式是text-align:center;经常用到的一个方法:absoluteleft:50%transformX(-50%)(利用绝对定位使元素top:50%; left:50%&#x…

flex语法

阮一峰老师对于flex布局的语法介绍

bfc详细介绍及其应用实例

前端布局中有一个经常出现的手段:BFC,从前知识零零碎碎的了解一些,今天专门搜集了这方面的资料,在此总结一下,并给出案例。想要了解BFC,需要有一些预备知识:三种布局手段(标准流、浮动、定位&am…

[导入]C#中显/隐式实现接口及其访问方法

摘要: 1.隐式实现的接口 interface IControl { void Paint(); } public class EditBox : IControl { public void Paint() { Console.WriteLine("Pain method is called!"); } } class Test { static void Main() { EditBox editbox new EditBox(); editbox.Paint()…

前置自加和后置自加

前置自加和后置自加小结: 简化代码,让变量的值1写法更加简单;单独使用时结果一样;后置自加:先返回原值,再自加(先人后己);前置自加:先自加,再返回…

单选框(radio)实现性别选择,实现选中后取消

今天在用input的radio属性时,发现这个标签有两个特别,1. 只能选择一个,选中之后还不能取消;2. 如果性别(男、女)又该怎么写代码使其选中一个状态? 说来也简单,下面两行代码就可以实现…

[原]C#开启停止SqlServer服务

usingSystem.Diagnostics;usingSystem.ServiceProcess;/**//// <summary> /// 程序载入时的状态,Author:Kennytianmsn.com /// </summary>privatevoidLoatStatus() { ServiceController sc new ServiceController("MSSQLSERVER"); s…

std string 的常用使用

用 string来代替char * 数组&#xff0c;使用sort排序算法来排序&#xff0c;用unique 函数来去重1、Definestring s1 "hello";string s2 "world";string s3 s1 "," s2 "!\n";2、appends1 ",shanshan\n";3、Compareif…