目录

  • 1. 数组方法
    • 1.1 原数组改变
      • Array.push()
      • Array.unshift()
      • Array.pop()
      • Array.shift()
      • Array.reverse()
      • Array.sort()
      • Array.splice()
      • Array.forEach(fn)
    • 1.2 原数组不变
      • Array.concat(arr1,arr2…)
      • Array.map(fn)
      • Array.filter(fn)
      • Array.every(fn)
      • Array.some(fn)
      • Array.slice()
      • Array.join()
      • Array.indexOf(item,start)
      • Array.includes(item)
  • 2. 字符串方法
  • 3. 字符串和数组 转换

1. 数组方法

  • 原数组改变的方法有:push、 pop、 shift、 unshift、 reverse、 sort、 splice、 forEach
  • 不改变原数组的方法有:concat、 map、 filter、 every、 some、 slice、 join、 indexOf、includes

1.1 原数组改变

Array.push()

向数组的末尾添加一个或多个元素,并返回新的数组长度

Array.unshift()

向数组的开头添加一个或多个元素,并返回新的数组长度

Array.pop()

删除并返回数组的最后一个元素,若该数组为空,则返回undefined

Array.shift()

删除并返回数组的第一个元素,若该数组为空,则返回undefined

Array.reverse()

将数组倒序,返回倒序新数组

Array.sort()

对数组元素进行排序, 排序顺序可以是字母或数字,并按升序或降序。
默认排序顺序为按字母升序。
从小到大升序:arr.sort(function(a,b){return a-b})
从大到小降序:arr.sort(function(a,b){return b-a})

Array.splice()

添加或删除数组中的元素。Array.splice(index,howmany,arr1,arr2…)
从index位置开始删除howmany个元素,并将arr1、arr2…数据从index位置依次插入。howmany为0时,则不删除元素。返回值为删除内容

Array.forEach(fn)

调用数组的每个元素,并将元素传递给回调函数。原数组不变。(注意该方法和map的区别)

        var  arr=[1,2,3,4]arr.push(5,6)  //6console.log(arr) //arr=[1,2,3,4,5,6]arr.unshift(7,8) //8console.log(arr) //arr=[7,8,1,2,3,4,5,6]arr.pop() //6console.log(arr) //arr=[7,8,1,2,3,4,5]arr.shift() //7console.log(arr) //arr=[8,1,2,3,4,5]console.log(arr.reverse()) //arr=[5,4,3,2,1,8]let  sortMinNum=function(a,b){return a-b}let  sortMaxNum=function(a,b){return b-a}arr.sort(sortMinNum) //arr=[1,2,3,4,5,8]arr.sort(sortMaxNum) //arr=[8,5,4,3,2,1]let array = [{name:'zy',age:18},{name:'sxy',age:19},{name:'scy',age:17}]function compare(param){return function (a,b){return a[param]-b[param] //升序//return b[param]-a[param] 降序}}console.log(array.sort(compare('age')))/*  {name:'scy',age:17},{name:'zy',age:18},{name:'sxy',age:19}  */       var fruits = ["Banana", "Orange", "Apple", "Mango"]fruits.splice(2,1,"Lemon","Kiwi") //['Apple']console.log(fruits) //['Banana', 'Orange', 'Lemon', 'Kiwi', 'Mango']

1.2 原数组不变

Array.concat(arr1,arr2…)

合并两个或多个数组,返回一个新的数组

Array.map(fn)

数组中的元素为原始数组元素调用函数处理后的值,返回一个新的数组

Array.filter(fn)

过滤数组中符合条件的元素,返回一个新的数组

Array.every(fn)

对数组中的每一项进行判断,若都符合则返回true,否则返回false

Array.some(fn)

对数组中的每一项进行判断,若都不符合则返回false,否则返回true

Array.slice()

按照条件查找原数组的选定元素并返回新数组

array.slice(n, m),从索引n开始查找到m处(不包含m)
array.slice(n) 第二个参数省略,则一直查找到末尾
array.slice(0)原样输出内容,可以实现数组克隆
array.slice(-n,-m) slice支持负参数,从最后一项开始算起,-1为最后一项,-2为倒数第二项

Array.join()

将数组的每一项用指定字符连接形成一个字符串。默认连接字符为 “,” 逗号

Array.indexOf(item,start)

检测当前值在数组中第一次出现的位置索引。
item:查找的元素 start:字符串中开始检索的位置
返回值:第一次查到的索引,未找到返回-1

Array.includes(item)

判断一个数组是否包含一个指定的值
参数:指定的内容。返回布尔值

        var arr1=[1,2,3]var arr2=[4,5,6]console.log(arr1.concat(arr2)) //[1,2,3,4,5,6]console.log(arr2.filter(x => x>4))  //[5,6]console.log(arr2.every(x => x>3)) //trueconsole.log(arr2.some(x => x==3)) //falseconsole.log(arr1.slice(1,2)) //[2]console.log(arr1.slice(0))   //[1,2,3]console.log(arr1.slice(-3,-1)) //[1,2]console.log(arr1.join('&')) // 1&2&3console.log(arr1.indexOf(2,0)) //1console.log(arr1.includes(0))  //flase

2. 字符串方法

length 属性返回字符串的长度

3. 字符串和数组 转换

  • 字符串转化为数组:split() 方法:将字符串按某个字符切割成若干个字符串,并以数组形式返回
  • 数组转化为字符串:join() 方法:将数组元素用某个字符连接成字符串
var str1="z,y,C,S,U"
var arr1=str1.split(',')
var str2="A-H-U"
var arr2=str2.split('-')
console.log(arr1) //['z', 'y', 'C', 'S', 'U']
console.log(arr2) //['A', 'H', 'U']console.log(arr1.join('')) //zyCSU
console.log(arr2.join('*')) //A*H*U

JavaScript 数组字符串方法相关推荐

  1. 这是如何更好地利用JavaScript数组的方法

    by pacdiv 由pacdiv 这是如何更好地利用JavaScript数组的方法 (Here's how you can make better use of JavaScript arrays) ...

  2. 判断javascript数组的方法

    2019独角兽企业重金招聘Python工程师标准>>> 判断javascript数组的方法 var is_array=function(){ return value &&a ...

  3. JavaScript数组归并方法reduce

    示例代码: <!DOCTYPE html> <html lang="zh"><head><meta charset="UTF-8 ...

  4. splice方法_[7000字]JavaScript数组所有方法基础总结

    基础决定一个人的上限,很多时候我们感叹别人在实现一个功能时使用方法的精妙,并且反思,为什么别人想的出来自己却想不出来?我觉得主要是因为对于基础的掌握上有很大的差距.本文总结数组的所有方法的基础使用,希 ...

  5. JavaScript数组sort()方法小结

    sort语法:arrayObject.sort(sortby):参数sortby可选.规定排序顺序.必须是函数. 由于sort方法是先将数组元素转换为字符串进行比较,根据字符串首字符的ASCII码排序 ...

  6. JavaScript 数组遍历方法的对比

    前言 JavaScript 发展至今已经发展出多种数组的循环遍历的方法,不同的遍历方法运行起来那个比较快,不同循环方法使用在那些场景,下面将进行比较: 各种数组遍历的方法 for 语句 代码: var ...

  7. JavaScript 数组去重方法合集(简洁易懂)

    JavaScript数组去重 JavaScript去重的七种方法 简单易懂 方法一:暴力去重法 // 暴力去重法 function ArrayIsUnique (array) {if (!Array. ...

  8. JavaScript 数组filter方法完整介绍

    数组过滤器方法是 JavaScript 中使用最广泛的方法之一. 它允许我们快速过滤出具有特定条件的数组中的元素. 因此,在本文中,您将了解有关过滤器方法及其各种用例的所有内容. 所以让我们开始吧. ...

  9. js常用数组字符串方法

    一.常用数组方法 创建数组 let arr = new Array(); // 创建一个新的数组 数组的增删改查 let arr = [1,2,3,4] arr.push('5') // 数组末尾添加 ...

最新文章

  1. linux下测试宽带速度
  2. java struts2 demo,Struts2第一个Demo求指导
  3. 字符串池化,减少了三分之一的内存占用
  4. apply_async进程不执行_[粉丝问答6]子进程进程的父进程关系
  5. 开发自测,到底该从哪里做起?
  6. win10 只要打开文件对话框就卡死解决方法
  7. php中fgetss函数,fgetss-函数用法_PHP教程
  8. Vue-条件判断与循环遍历
  9. SEGY数据的读取与写出C++
  10. ZBrush与数位板雕刻模型如何才能结合
  11. linux服务器使用WonderShaper进行带宽限制
  12. 只知道wxid怎么添加好友
  13. 代码实现判断主机字节序(大端 or小端 )-- 面试题
  14. 贷还是不贷:如何用Python和机器学习帮你决策?(zz)
  15. 苹果系统使用svg 动画_为什么要使用SVG图像:如何为SVG设置动画并使其快速闪电化
  16. Python代码解析数据
  17. 刷完leetcode的二叉树中等题,请允许我小小的嘚瑟一把
  18. 基于struts+spring+ibatis的轻量级J2EE开发
  19. 牛逼的人都是相似的,而苦逼的人则各有各的苦逼
  20. 关于U盘损坏,无法格式化,0空间等问题

热门文章

  1. 利用人性做生意,女装店做营销:有钱人可以免费穿?颠覆式营销!
  2. -fPIC, -fpic, -fpie, -fPIE
  3. Delphi 文件操作 AssignFile()
  4. 《战地4》停止工作的改善方法
  5. VC调用MATLAB 产生的dll文件
  6. 聊聊国内云厂商三朵云
  7. oracle到hive数据类型转换
  8. 【文献学习】Multipath Rayleigh and Rician Fading Channel Simulation Using MATLAB
  9. 大四学生想在成都找一个实习的工作机会
  10. PyCharm快捷键大全(windows+mac)