javascript常见的数组操作、对象操作、字符串操作

1.数组操作

1.1简单的数组操作

  • 1.Array.length() 赋一个新的值,会导致Array大小的变化
  • 2.arr.indexOf(arg) 获取参数索引值,这个和字符串一样
  • 3.arr.slice(0, 3) 截取数组的某一部分,和字符串的substring()一样 取头不取尾,* 不改变原数组,返回新的数组
  • 4.arr.push(‘A’, ‘B’) 向数组尾部添加,直接改变原数组,返回新数组长度
  • 5.arr.pop() 把Array的最后一个元素删除掉,返回被删掉的元素
  • 6.arr.unshift(‘A’, ‘B’) 向数组头部添加,直接改变原数组,返回新数组长度
  • 7.arr.shift() 把Array的第一个元素删除掉,返回被删掉的元素
  • 8.arr.reverse() 反转数组
  • 9.arr.splice(2, 3, ‘a’, ‘b’) 从索引2开始删除3个元素,然后再添加两个元素,直接改变原数组,返回删除的元素
  • 10.arr1.concat(arr2) 把arr1和arr2连接起来,不改变原数组,返回新的数组
  • 11.arr.join(’-’) 把arr里边的元素按照 '-'连接起来,不改变原数组,返回字符串,不能给字符串用
    var arr = [‘A’, ‘B’, ‘C’, 1, 2, 3];
    arr.join(’-’); // ‘A-B-C-1-2-3’

1.2参数是函数的数组函数

  • 1.map/reduce
    Array.map(): 一个一个的遍历数组Array里的值,一个一个的输出,返回新数组
    Array.reduce(): 把结果继续和序列的下一个元素做累积计算 返回新数组
    [x1, x2, x3, x4].reduce(f) = f(f(f(x1, x2), x3), x4)

  • 2.filter()
    Array.filter(): 把传入的函数依次作用每个元素,根据返回值—true/false决定保留还是丢弃,不改变原数组,for循环循环嵌套太深可以用filter筛选

  • 3.Array.sort()
    对当前数组排序,直接改变原数组,返回排序好的

  • 4.Array
    Array.every():判断数组的所有元素是否满足测试条件。返回布尔值
    Array.some()
    Array.find():查找符合条件的第一个元素,找到了,返回这个元素,否则,返回undefined
    Array.findIndex():查找符合条件的第一个元素,返回元素的索引,如果没有找到,返回-1
    iterable.forEach() : map返回数组,forEach单个返回

2.字符串操作

  • 1.模板字符串 还可以换行
  • 2.求字符串的长度 string.length()
  • 3.变为大写 string.toUpperCase()
  • 4.变为小写 string.toLowerCase()
  • 5.‘hello’.indexOf(‘e’) //1 搜索指定字符串出现的位置
  • 6.‘hello’.substring(0,1) 返回’h’, 不改变原字符串
  • 7.s.replace(“找到字符串”, “替换成我”) //第一个参数通常是正则
  • 8.‘a b c’.split(’ '); // [‘a’, ‘b’, ‘’, ‘’, ‘c’]

3.对象操作

  • 1.通过Object.keys和Object.values分别获取对象所有的key值和value值,返回数组
    const user = {
    name: ‘jayChou’,
    job: ‘singer’,
    song: ‘七里香’
    };
    let userKeys = Object.keys(user); //[‘name’, ‘job’, ‘song’]
    let userValues = Object.values(user); //[‘jayChou’, ‘singer’, ‘七里香’]

  • 2.通过Object.entries把对象转换成key/value对数组
    const user = {
    name: ‘jayChou’,
    job: ‘singer’,
    song: ‘七里香’
    };
    let userKeys = Object.entries(user); //[[‘name’,‘jayChou’],[‘job’, ‘singer’], [‘song’, ‘七里香’]]

  • 3.通过解构赋值过滤对象属性
    const {address, …user} = {
    name: ‘jayChou’,
    job: ‘singer’,
    song: ‘七里香’,
    address: ‘台湾’
    };
    console.log(user) // {name: ‘jayChou’,job: ‘singer’,song: ‘七里香’}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值