js中字符串常用操作及讲解

    1. charAt(index) 传入一个下标,返回对应下标的字符

返回: 取得到则返回对应下标的字符 取不到则返回 ""(空字符串)

    1. charCodeAt(index) 传入一个下标,返回对应下标的字符的编码(ascii)
    1. 构造函数 String 的方法 => String.fromCharCode() 传入一个或多个 ascii 码 返回对应的字符
    1. indexOf() 返回某个或某段字符 在字符串中第一次出现的位置(某段字符返回该段字符第一个字符的位置)(不存在返回-1) 拓展: indexOf(char,startIndex) 还可以接收第二参数 作为起始下标(该元素第一次出现时的索引+1 往后找)
    1. lastIndexOf() 返回某个或某段字符 在字符串中最后一次出现的位置 拓展: lastIndexOf(char,startIndex) 还可以接收第二参数作为起始下标
    1. search() 普通用法 => 同 indexOf,返回某个或某段字符 在字符串中第一次出现的位置(含有即可) 升级用法: 配合正则表达式使用:返回符合规则的某个或某段字符在字符串中第一次出现的位置

var reg = /day/ig; var index = str.search(reg);

    1. match() 普通用法 => 将匹配的内容(某个或某段字符)存入数组 默认只匹配一个

升级用法: 配合正则表达式使用:将符合规则的内容(某个或某段字符)存入数组 默认只匹配一个(如果设置修饰符 g 全局匹配 匹配整个字符串)

    1. replace(oldStr,newStr);

普通用法 => 用新的字符串替换原本的字符串(某个或某段字符) => 默认只替换一个

返回新的字符串

升级用法: 配合正则表达式使用

用新的字符串替换符合规则的字符串(某个或某段字符) 去除所有空格

var str = "    11  111    ";

var reg = / /g;  //var reg = /\s+/g;

var new = str.replace(reg,"");
    1. concat() 字符串拼接 (将多个字符或字符串拼接形成新字符串) 返回 拼接后的新字符串

了解即可 一般还是还是习惯用 +

    1. slice(startIndex,endIndex) 字符串裁 切默认(0,str.length)包括起始值不包括结束值 传一个参数默认该下标到最后 slice() 可以接收负值作为参数 -3 => str.length-3(最后一位是 str.length-1) (-3,-6)错 (-6,-3)对
    1. substring(startIndex,endIndex) 裁切 (同 slice 但是不能接收负值) 传一个参数默认该下标到最后
    1. substr(startIndex,length) 字符串裁切 从下标为 startIndex 的位置开始,裁切 n 个字符
    1. split(char) 用特定的字符将字符串拆分为数组 => 返回数组 var arr = str.split(" "); //空格将字符串拆成数组 var arr = str.split(""); //空字符串将字符串拆分为单个字符
    1. toUpperCase() 字符串转大写 toLowerCase() 字符串转小写
    1. trim() 去除首尾空格 trimLeft()去除头部空格 trimright() 去除尾部空格

数组

  1. push() 尾部新增一个或多个 返回值:新的长度 改变数组

  2. unshift() 头部新增一个或多个 返回值:新的长度 改变数组

  3. pop() 尾部删除一个

  4. shift() 头部删除一个

  5. splice() 删除增加修改均可

  6. reverse() 反转

不影响原数组 7. indexOf() 返回某个元素在数组中第一次出现的位置(下标) IE8 及以下不能使用

  1. includes() (ES6 新增)用于判断数组中是否存在某个元素 (空数组没有元素,返回-1,false)

  2. join(char) 用特定的字符将数组拼接形成字符串 如果不传参 char 默认","

  3. slice(startIndex,endIndex) 数组的裁切 (通过指定起始下标和终止下标 裁切数组中的某一段元素)

    startIndex 起始下标(默认值 0) endIndex 终止下标(默认值 被裁切的数组的长度 arr.length) 取得到起始下标值,取不到终止下标值[startIndex,endIndex)

    返回值: 被裁切的元素形成的数组

    是否影响原数组: 不影响

    不传参 => 得到一个与 原数组元素相同的新数组(数组的深复制) 返回 undefined

  4. concat() 可以将多个数组和元素拼接形成一个新数组 (数组的合并)

    注意:如果拼接的是一个数组,则将数组展开(遍历数组中的每个元素) 放到新数组中

        如果拼接的不是一个数组,则直接放到新数组中

    返回值: 拼接形成的新数组

    是否影响原数组 不影响

    不传参 => 得到一个于原数组 元素相同的新数组(数组的复制)

  5. sort() 数组排序(官方提供的数组排序的方法)

    1. 字符排序 (按照 ASCII 码表的大小排序)

    2. 纯数字排序

    返回值: 排序后的原数组

    是否影响原数组: 影响

    把函数当成参数传入到 sort()方法中 => 规定如何排序

    该函数有两个形式参数 a,b 分别表示每次比较的前后两个元素 (用于指定排序的方式)

    return a - b; 从小到大排列 return b - a; 从大到小排列

    var arr = [2,8,4,6,5,7,9,3,1,11,32,45,76,64,100];

    arr.sort(function(a,b){ //形参

    // return a - b;  // a - b > 0 => 如果前一个 大于 后一个 交换两个数的位置 从小到大排
    
    return b - a;  // b - a > 0 => 如果前一个 小于 后一个 交换两个数的位置 从大到小排

    })

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值