JavaScript的学习笔记(day06)

1.数组创建

字面量模式:var arr = [“terry”,“larry”,“tom”]
使用Array构造函数:var arr = new Array();

2.数组访问

通过数组索引访问:arr[0]
特殊的访问值:arr[index] 直接访问index处的值,index可以超出数组长度,但是访问值是undefined
arr[length-1] = Max(index) 数组的最后一个元素
arr[length+N/-N] 开辟或删除值为N的数组元素空间

3.数组API

3.1数组序列化
arr.toString() 把数组以逗号形式分开并转化为字符串
arr.join() 使用指定字符把数组分隔开并转化为字符串

3.2构造函数的方法
Array.isArray() 判断一个该变量是否是一个数组
Array.from() 从一个类数组或者可迭代对象中创建一个新数组(把输入的值(该值是类数组或者可迭代对象)转化成为一个数组)
Array.of() 根据输入的参数创建一个新数组,输入的参数可以是任意数量和类型

3.3栈和队列的方法
arr.push() 向数组的末尾添加一个或多个元素,返回添加后的数组长度
arr.pop() 删除数组的最后一个元素,返回被删除的元素
arr.shift() 删除数组的第一个元素,返回被删除的元素
arr.unshift() 向数组的开头添加一个或者多个元素,返回添加后的数组长度

3.4排序方法
arr.reverse() 颠倒数组的元素顺序,返回颠倒后的数组
arr.sort() 用于对数组进行排序,默认按照Ascii码进行升序排列
可以输入以函数作为参数的自定义排序方法
升序和降序的条件:升序 =》a-b 降序 =》 b-a

3.5操作方法
arr.concat() 用于连接两个或多个数组对象或具体值,该方法不会改变现有数组,返回连接后的新数组
arr.slice(start, end) 提取区间内的选定元素,当参数为负数时,表示从最后开始提取,返回一个新的数组,数组中包含提取出来的元素
arr.splice(index, howmany, item1…itemX) 从index处添加或删除howmany个元素,item是添加到数组的新元素,返回改变后的数组

3.6位置方法
arr.indexOf(item, start) 返回数组中某个指定元素的位置,item是需要查找的元素,start是从哪里开始查找,返回该元素所在位置,如果没有返回-1
arr.lastIndexOf(item, start) 与indexOf()使用方法类似,返回从start开始查找最后一个item元素出现的位置,没有返回-1

3.7迭代方法
arr.every(function(currentValue, index, arr), thisValue) 检测该数组中的元素是否满足指定条件(由函数提供),有一个不满足返回false,全满足返回true
currentValue 必须,当前元素的值
index 可选,当前元素的索引值
arr 可选,当前元素属于的数组对象
例:

  var ages = [32, 33, 16, 40];
  var result = ages.every(function (age) {
    return age >= 18
  })
  console.log(result);//输出结果为:false

arr.some(function(currentValue, index, arr),thisValue)
检测该数组是否满足指定条件(由函数提供),有一个满足返回true,没有一个满足返回false
currentValue 必须,当前元素的值
index 可选,当前元素的索引值
arr 可选,当前元素属于的数组对象
例:

   var ages = [32, 33, 16, 40];
      var result = ages.some(function (age) {
        return age >= 18
      })
      console.log(result);//输出结果为:true

arr.filter(function(currentValue,index,arr), thisValue)
创建一个新数组,把符合条件(由函数提供)的元素放入该数组中
currentValue 必须,当前元素的值
index 可选,当前元素的索引值
arr 可选,当前元素属于的数组对象
例:

 var ages = [32, 33, 16, 40];
  var result = ages.filter(function (age) {
    return age >= 18
  })
  console.log(result);//输出结果为:[ 32, 33, 40 ]

arr.map(function(currentValue,index,arr), thisValue)
返回一个新数组,数组中的元素为调用函数处理后的数组元素
currentValue 必须,当前元素的值
index 可选,当前元素的索引值
arr 可选,当前元素属于的数组对象
例:

var numbers = [4, 9, 16, 25];
  var result = numbers.map(function (number) {
    return Math.sqrt(number)
  })
  console.log(result);//输出结果为:[ 2, 3, 4, 5 ]

arr.forEach(function(currentValue, index, arr), thisValue)
调用数组元素,并把数组元素传递给回调函数
currentValue 必须,当前元素的值
index 可选,当前元素的索引值
arr 可选,当前元素属于的数组对象
例:

  var numbers = [4, 9, 16, 25];
  numbers.forEach(function (number, index) {
    console.log(index + ' -- ' + number);
  })
  // 0 -- 4
  // 1 -- 9
  // 2 -- 16
  // 3 -- 25
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值