js 中有关字符串的操作

时间:2023-03-10 03:18:01
js 中有关字符串的操作

1. substring(start, end)
  1). 包头不包尾
  2). start 必需项
  3). end 非必需项
  4). start end 谁大谁小无所谓
  5). start end 若为 NAN/负数 时,则替换为 0
  6). start end 均是从索引 0 算起的
  7). 截取的子串长度为 |start-end| (绝对值)
  8). end 不指定数值,返回从 start 到 原串末尾 的子串

  var str="javaScript";
  console.log(str.substring(4));
  //Script
  var str="javaScript";
  console.log(str.substring(4,7));
  //console.log(str.substring(7,4));
  //Scr
  var str="javaScript";
  console.log(str.substring(4,0));
  //console.log(str.substring(0,4));
  //java

2. substr(start, length)
  1). start 开始,截取 length 长度的子串
  2). start 必需项
  3). length 非必需项
  4). length 为 0/NaN/负数 时,返回空串,
  5). length 不指定数值,返回从 start 到 原串末尾 的子串

  var str="javaScript";
  console.log(str.substr(4,2));
  //Sc
  var str="javaScript";
  console.log(str.substr(4));
  //Script

3. slice(start, end)
  1). 包头不包尾
  2). start 必需项
  3). end 非必需项
  4). start end 若为负数,则表示从原串末尾开始算起,-1代表最后一个,-2代表倒数第二个
  5). end 为 0/NaN 时,返回空串
  6). 若最后算出 end 在 start 之前的话,也返回空串
  7). end 不指定数值,返回从 start 到 原串末尾 的子串

  var str="javaScript";
  console.log(str.slice(4, 10));
  //Script
  var str="javaScript";
  console.log(str.slice(4, -1));
  //Scrip
  var str="javaScript";
  console.log(str.slice(-4, -1));
  //rip
  var str="javaScript";
  console.log(str.slice(-4, 10));
  //ript
  var str="javaScript";
  console.log(str.slice(-4, 1));//(4, 'a') (4, 0) (4, -6)
  //

4. split(separator, howmany)
  1). split 切割字符串并已数组形式返回
  2). separator 必需项 分割器,格式:字符串/正则表达式
  3). howmany 非必需项 返回的数组的最大长度
  4). separator 若为 "",则返回将原串每个字符之间都作分割后的数组
  
  var str="text/javaScript";
  console.log(str.split('/'));
  //["text", "javaScript"]
  var str="How are you doing today?";
  console.log(str.split(' '));
  //["How","are","you","doing","today?"]
  var str="How are you doing today?";
  console.log(str.split(' ', 3));
  //["How","are","you"]

5. join(separator)
  1). 将 数组 中的 每个元素 已指定的 分隔符 连接到一起 组成一个字符串
  2). separator 非必需项 分割符,格式:字符串/正则表达式
  3). 与 split 互为反操作
  
  var arr=["text", "javaScript"];
  console.log(arr.join('/'));
  //text/javaScript
  var arr=["text", "javaScript"];
  console.log(arr.join());
  //textjavaScript
  
6. indexOf(searchvalue, fromindex)
  1). 从左向右检索 某个指定字符串值 在 原字符串 中首次出现的位置(索引)
  2). searchvalue 必需项 要检索的字符串值
  3). fromindex 非必需项 指定开始检索的位置(0~str.length-1)
  4). fromindex 若省略,则从头到尾检索原字符串
  5). fromindex 若存在,则从该所索引值开始检索
  6). 大小写敏感
  7). 若 searchvalue 在 原串中不存在,则返回 -1

  var str="javaScript";
  console.log(str.indexOf('a'));
  //1
  var str="javaScript";
  console.log(str.indexOf('s'));
  //-1
  var str="javaScript";
  console.log(str.indexOf('a', 2));
  //3

7. lastIndexOf(searchvalue, fromindex)
  1). 与 indexOf 与异曲同工之妙,开始检索方向与 indexOf 相反
  2). 从右向左开始检索 某个指定字符串值 在 原字符串 中最后出现的位置(索引)

  var str="javaScript";
  console.log(str.lastIndexOf('a'));
  //3
  var str="javaScript";
  console.log(str.lastIndexOf('s'));
  //-1
  var str="javaScript";
  console.log(str.lastIndexOf('a', 2));
  //1