字符串、数组和对象方法

字符串、数组和对象方法

一、字符串方法

① indexOf indexOf(substr[,start]) 返回 substr 在字符串 str 中首次出现的位置,从 start 位置开始查找,如果不存在,则返回 -1。不填start则从第0项开始查找 substr传入空字符串 也是返回0 不会返回-1(源码规定)
② lastIndexOfindexOf一样 但是是从最后一项开始查找的
③ includes str.includes(‘要查找的字符串’) 返回布尔值,表示是否找到了参数字符串。
④ replace replace(regexp|substr, newSubStr|function)
第一个参数是要被替换的字符串或者正则表达式
第二个参数是字符串或者放回字符串的一个函数
⑤ 模板字符串方法 `` ES6中提供了模版字符串,用`(反引号)标识,用${}将变量括起来。
⑥ toLowerCase() 和toUpperCase()方法str.toLowerCase() 用于把字符串转换为小写。toUpperCase() 把字符串转换成大写
⑦ padStart()和padEnd() start用于头部补全 end用于尾部补全padStart和padEnd一共接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数是用来补全的字符串。
⑧ toString()和String() toString方法可以将数字类型和boolean类型转换成字符串类型 String可以把任意类型转换成字符串类型
⑨ substring(start[,end]) 返回从start到end(不包括)之间的字符,若没有end,则截取到最后.
⑩ substr(start[,howmany]) 返回从start开始截取,包括start项,截取的数量为howmany(<lenght-1) 返回截取的字符串.start可以为负数
⑪ search() 查找 str 与一个正则表达式是否匹配。如果匹配成功,则返回正则表达式在字符串中首次匹配项的索引;否则,返回 -1
⑫ split(separator,limit) 把字符串分割为字符串数组。分隔符为separator,limit为返回的数组的最大长度
⑬ slice(start,end) 从 start 到 end (不包括)之间的字符,可传负值
⑭ match()方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。返回一个包含匹配结果的数组,如果没有匹配项,则返回 null。
⑮ trim() 去除字符串首尾的空白字符
⑯ charAt() 返回字符串给定索引位置的字符
⑰ includes(), startsWith(), endsWith() includes表示字符串中是否含有检测的字符,startWith表示头部是否是检查的字符,endWith表示结尾是否是检查的字符
⑱ repeat()返回新的字符串 str.repeat(3)表示str这个字符串重复三次

二、数组方法

  1. 循环方法:
  • forEach:
    对数组进行遍历循环,对数组中的每一项运行给定函数。这个方法没有返回值。参数都是function类型,默认有传参,参数分别为:遍历的数组内容;第对应的数组索引,数组本身。
    arr.forEach((item,index)=>{ })
    item为数组的每一项 index为索引值

  • some: (es5方法)
    array.some(function(currentValue[,index,arr),thisValue]){ }
    currentValue 为数组中的每一项(必选)
    index 为当前的索引
    arr 当前元素属于的数组对象
    用法:判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。
    如果 return true,就会立即终止这个数组的后续循环
    实例:
    var arr = [1, 2, 3, 4, 5];
    var arr2 = arr.some((item)=> {
    return item < 3;
    });
    console.log(arr2); //true

  • filter :“过滤”功能,数组中的每一项运行给定函数,返回满足过滤条件组成的数组。
    var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
    var arr2 = arr.filter(function(item, index) {
    return index % 3 === 0 || item >= 8;
    });
    console.log(arr2); //[1, 4, 7, 8, 9, 10]
    其中item为每一项 index为索引 filter方法不会改变原数 组,而是返回一个新的数组!!!.

  • find与findIndex:(es6方法)
    数组实例的find()方法,用于找出第一个符合条件的数组成员。它的参数是一个回调函数,所有数组成员依次执行该回调函数,直到找出第一个返回值为true的成员,然后返回该成员。如果没有符合条件的成员,则返回undefined。
    find()方法的回调函数可以接受三个参数,依次为当前的值、当前的位置和原数组。
    数组实例的findIndex()方法的用法与find()方法非常类似,返回第一个符合条件的数组成员的位置(查找到符合条件的索引),如果所有成员都不符合条件,则返回-1。
    for in 方法 只能获取数组每一项的索引
    var arr = new Array(“first”, “second”, “third”)
    for(var item in arr) {
    document.write(arr[item]+",");
    }
    for of 遍历 获取得到是每一项 (es6语法)
    for(let value of arr) {
    console.log(value)
    });

  • map遍历方法 item 是数组的每一项
    arr.map(function(item){
    console.log(item)
    return item
    });
    返回的是新的数组

  1. 操作方法
  • slice() 可以接受一或者两个参数,即要返回项的起始位置和结束位置,在只有一个参数的情况下,slice()方法返回从该参数指定的位置开始到当前数组末尾的所有项.如果有量的参数,该方法返回起始位置和结束位置之间的项,不包括结束位置的项; 此方法不改变原数组的长度,当传入负数的时候,最后一项为-1项 倒数第二项为-2项,返回新数组,不改变原数组
  • splice() arr.splice(index,howmany,item1,…,itemX) index是要删除的第一项 howmany 是删除的项数 item1…itemX 是要插入的项,其实index和howmany为必须得项,不删除需要填写howmany为0; 返回的是被删除的项,是一个新数组; 可以改变原数组
  • push(): 可以接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。改变原数组
  • pop():数组末尾移除最后一项,减少数组的 length 值,然后返回移除的项。改变原数组
  • shift(): 从前面删除元素 返回被删除的元素 改变原数组
  • unshift(): 从前面添加元素 返回新数组的长度 改变原数组
  • concat(): 方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。 arrayObject.concat(arrayX,arrayX,…,arrayX)
  • join(): 参数为 以这个参数分割数组成字符串 不改变原数组
  • reverse(): 将数组进行反转 改变原数组
  • indexOf() 与 lastIndexOf() indexOf() 第一个参数是指需要搜索的字符串 返回索引 找不到返回-1 字符串也可以用这个方法 改变原数组
  • every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。如果所有元素都满足条件,则返回 true;
  • sort() 方法用于对数组的元素进行排序,排序顺序可以是字母或数字,并按升序或降序。默认排序顺序为按字母升序。如果比较数字,需要使用函数作为参数,返回值确定是升序还是降序points.sort(function(a,b){return b-a}); 改变原数组
  • includes() 与字符串方法相同 返回布尔类型
  • Array.from(‘字符串’) 参数是字符串,可以把这个字符串转换成数组
  • 数组去重(ES6): let arr = new Set(array) let newArr=Array.from(arr) newArr就是去重后的新数组 arr是一个set函数的实例对象

三、对象方法

  • Object.keys(obj) 枚举出obj中所有的对象的键
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值