第五章 引用类型 object array

1.Object类型

创建object

  • var person=new Object(); person.name="猪猪"
  • var person={ name:"猪猪" }; 对象创建属性或者方法 推荐使用

读取对象的属性

  • 通过点的方式 person.name
  • 通过方括号 person[name]

2.Array类型

创建Array(可以保存任何类型的数据)

  • var arr=new Array(5)创建长度是5的数组
  • var arr=[]

读取数组值

  • 通过方括号下标的方式读取 arr[0]

设置数组的值

  • 通过方括号下标的方式 arr[0]=“block”

检测数组

  • arr instanceof Array
  • Arrar.isArray(arr)// 通过Array对象的isArray()方法

转换方法

  • 所有对象都有toString() toLocalString() valueOf()
var color=["red","blue","yellow"]
  color.toString()   red,blue,yellow
  color.toLocalString() red,blue,yellow
  color.valueOf() ["red","blue","yellow"]
  
  • 将数组转化为字符串
    color.join(" ,") red,blue,yellow
    color.join("||") red||blue||yellow

栈方法(先进后出)

  • push() 进栈 给数组后面追加数据
  • pop()出栈 删除数组的数据

队列方法(先进先出)

  • unshift() 进入队列 从数组的前面进
  • shift()出队 从数组的前面出

重排序方法

  • 数组的翻转reverse()
 color.reverse()  ["yellow","blue","red"]
  • 数组的排序sort() 根据字符串的位置进行比较
    一般接受一个比较函数作为参数
  function compare(value1,value2)
  {
     if(value1<value2)
     { 
         return -1 // 第一个位于第二个之前 返回-1
     }
     else if(value1>value2)
     {
        return  1
     }
     else{
        return 0
     }
  }

var arr=[8,5,5,9,6,2,18,10]
arr.sort(compare) //2 5 5 6 8 9 10 18

操作方法

  • 数组的连接 concat()
  var color=["red","yellow","blue"]
  color.concat("red",[1,3,5])  [ "red","yellow","blue","red",1,3,5]
  color   ["red","yellow","blue"]
  • 数组截取 slice() 不影响原数组

    slice(起始位置) 起始到末尾
    slice(起始位置,结束位置) 不包括结束位置

  • 数组截取splice() 影响原数组

    删除数组 splice(起始位置,项数)
    增加数组 splice( 起始位置,0,增加数据)
    替换数据 splice(起始位置,1,替换数据)

位置方法

  • indexOf(数据) 返回位置 从前面开始查找
    indexOf(数据,从哪个位置开始)

  • lastindeOf(数据) 返回位置 从后面开始查找
    lastIndexOf(数据,从哪个位置开始)

迭代方法

  • every() 数组中的每一项都运行该函数,每一项返回true,结果返回true
 var number=[1,5,8,52,4,22];
  number.every(function(item,index,array){
       return (item>2)
  })  false
  • some() 数组中的每一项都运行该函数,任意一项返回true,结果返回true
var number=[1,5,8,52,4,22];
  number.some(function(item,index,array){
       return (item>2)
  })  true
  • filter()数组中的每一项都运行该函数,结果返回为true的数组
var number=[1,5,8,52,4,22];
  number.filter(function(item,index,array){
       return (item>2)
  })  
  [5,8,52,4,22]
  • map()数组中的每一项都运行该函数,结果返回调用的结果组成的数组
 var number=[1,5,8,52,4,22];
  number.map(function(item,index,array){
       return (item*2)
  })  
  [10,16,104,8,44]
  • forEach()数组中的每一项都运行该函数,这个方法没有返回值
var number=[1,5,8,52,4,22];
  number.forEach(function(item,index,array){
       执行某些操作
  })  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值