美文网首页
数组及字符串的方法汇总

数组及字符串的方法汇总

作者: 静小弟 | 来源:发表于2020-02-13 13:35 被阅读0次

数组的方法

增删改查类

arr.push() 从后面添加元素,返回值为添加完后的数组的长度
arr.pop() 从后面删除元素,只能是一个,返回值是删除的元素
arr.shift() 从前面删除元素,只能删除一个,返回值是删除的元素
arr.unshift() 从前面添加元素, 返回值是添加完后的数组的长度
arr.splice(i,n) 删除从i(索引值)开始之后的那个元素。返回值是删除的元素  (i 索引值,n 个数)

数组的其他方法

arr.concat() 连接两个数组 返回值为连接后的新数组
arr.sort() 将数组进行排序,返回值是排好的数组,按照ASCII码进行排序。
// arr.sort((a,b) => a-b) 可以传入一个回调函数,判断a-b的返回值,大于0,从小到大排序。
arr.reverse() 将数组反转,返回值是反转后的数组
arr.slice(start,end) 切去索引值start到索引值end的数组,不包含end索引的值,返回值是切出来的数组
str.split() 将字符串转化为数组
---es6 Array.from() 
// 将伪数组变成数组,就是只要有length的就可以转成数组。

---es6 Array.of(n) 
// 将一组值转换成数组,类似于声明数组
// Array.of(n) => [n]

new Array(n)
// 生成一个长度为n的空数组[n*empty]

数组的遍历方法

arr.forEach((value, index, array) => {})
// 没有return, 即使有return,也不会返回任何值,并且会影响原来的数组
value --当前索引的值
index --索引
array --原数组

arr.map((value, index, array) => {})
// 自带return,返回一个长度相等的数组

arr.filter((value, index) => {value>3})
// 过滤数组,自带return,返回一个满足条件为true的数组

arr.every((value, index) => {value>3})
// 依据判断条件,数组的元素是否全满足,若满足则返回ture

arr.some((value, index) => {value>3}) 
// 依据判断条件,数组的元素是否有一个满足,若有一个满足则返回ture

arr.indexOf() 
// 查找某个元素的索引值,若有重复的,则返回第一个查到的索引值若不存在,则返回 -1

arr.lastIndexOf()   和arr.indexOf()的功能一样,不同的是从后往前查找

arr.find((value, index, array) =>value > 2)
// 找到第一个符合条件的数组成员

arr.findIndex((value, index, array) =>value > 2) 
// 找到第一个符合条件的数组成员的索引值

arr.includes() 
// 判断数中是否包含给定的值
* indexOf()返回的是索引值,arr.includes()返回的是boolean

arr.keys() 
// 遍历数组的键名

arr.values() 
// 遍历数组键值

arr.entries() 
// 遍历数组的键名和键值

arr.reduce((total, currentValue, currentIndex, arr), initialValue)
// 接收一个函数作为累加器,累加的值放在total
// total 必需。初始值, 或者计算结束后的返回值。
// currentValue 必需。当前元素
// currentIndex 可选。当前元素的索引
// arr  可选。当前元素所属的数组对象。
// initialValue 传递给函数的初始值

reduce的高级用法

  • 数组去重
const arr = [1,2,4,5,6,3,2]
const newArr = arr.reduce((total,curr) => {
   if (total.includes(curr)) {
      return total
    } else {
      return total.concat(curr) // 此处不能用push,会报错 total undefined
    }
}, [])
  • 将多维数组转化成一维
let arr = [[0, 1], [2, 3], [4,[5,6,7]]]
const newArr = function(arr){
   return arr.reduce((pre,cur)=>pre.concat(Array.isArray(cur)?newArr(cur):cur),[])
}
console.log(newArr(arr)); //[0, 1, 2, 3, 4, 5, 6, 7]

正则相关

字符串的方法

str.toLowerCase()
// 把字符串转为小写,返回新的字符串。

str.toUpperCase()
// 把字符串转为大写,返回新的字符串。

str.charAt()/str.charCodeAt()
// 返回指定下标位置的字符。如果index不在0-str.length(不包含str.length)之间,返回空字符串。
// 返回制定下标位置的unicode编码,返回值是 0 - 65535 之间的整数。

str.indexOf('str', index) / str.lastIndexOf('str', index)
// 返回某个指定的子字符串在字符串中第一次出现的位置
// 第一个参数为查找的值,区分大小写
// 第二个参数为开始查找索引的位置

str.slice(n, [m])
// 返回字符串中提取的子字符串。
// n,m为截取字符串的索引位置,m不写,表示截取n开始到索引最后以为的字符串

str.substring()
// 用法同上,但不支持负数

str.substr(n, m)
// 返回从指定下标开始指定长度的的子字符串
// n表示开始截取的索引,m表示截取的长度

str.split() --支持正则表达式
// 将字符串分割成字符串数组,或者以正则的内容进行分割

str.replace() --支持正则表达式
// 在字符串中用一写字符替换成另一些字符

str.match() --支持正则表达式
// 返回所有查找的关键字内容的数组。

相关文章

  • (八)数组方法

    数组方法汇总 数组拼接为字符串 模拟栈和队列 排序 数组操作 查找item在数组中的位置 迭代方法 归并方法

  • ES6的语法笔记

    参考 遍历 forEach 过滤 filter 映射 map 汇总reduce 构造函数 数组方法 字符串方法 展...

  • 数组及字符串的方法汇总

    数组的方法 增删改查类 数组的其他方法 数组的遍历方法 reduce的高级用法 数组去重 将多维数组转化成一维 正...

  • MS-常用方法

    方法汇总 数组方法 字符串方法 时间函数 Mysql数据库 File函数 Directory函数 其他方法 iss...

  • js数组方法汇总

    需求: js数组(Array)方法汇总 索引: 对数组方法的学习和汇总,分为三大类: 一,改变原数组的方法(10种...

  • js关于数组的方法汇总

    js关于数组的方法汇总

  • Java基础之常用API汇总

    Java基础之常用API汇总 String类: String类代表字符串,字符串本质就是一个字符数组.构造方法:1...

  • Java基础之常用API汇总

    Java基础之常用API汇总 String类: String类代表字符串,字符串本质就是一个字符数组.构造方法:1...

  • js反转字符串

    先将字符串转为数组,再利用reverse方法反转数组。最后通过join方法将数组重新转回字符串

  • 2020-03-04

    字符串,对象,类数组转换为数组方法 //字符串 // 方法一: let a = 'asasa'; conso...

网友评论

      本文标题:数组及字符串的方法汇总

      本文链接:https://www.haomeiwen.com/subject/gpwkfhtx.html