手记

数据结构与算法 JavaScirpt描述 第 1 天

  • 数组

JavaScript 中对数组的定义:

一个存储元素的线性集合(collection),元素可以通过索引来任意存取,索引通常是数字,几乎所有编程都有类似的数据结构。而JavaScript略有不同。

JavaScript 中数组只是特殊对象,表示偏移量的索引是该对象的属性,索引可能是是整数。在内部被转换为字符串,因为JavaScript中,对象属性名必须为字符串。 因为只是特殊对象,所以效率上不如其他语言中数组高。

  • 创建数组

字面量方式效率最高:

var arr=[ ],

脚本语言常见特性:数组中元素不必是同一种数据类型。

判断是否数组:

Array.isArray([]) //true
  • 读写数组

使用[ ]操作符。。。略 (so easy 且无重点)

  • 字符串生成数组

var string="this is imook"
string.split(" ")  //["this","is","imook"]
  • 数组浅复制

var a=[1,2,3];    var samea=a;   
samea[0]=2;     a[0]=2;
  • 数组深复制

function copy(target,new){
    for(var i=0;i<target.length;i++){
        new[i]=target[i]
    }
}
  • 存取函数

indexOf() join()  toString()
  • 可变函数

splice()  push() pop() shift() unshift() reverse() sort()
  • 迭代器不生成新数组方法(对数组每个元素应用函数)

forEach( )  every( ) some( ) reduce( ) reduceRight( )
  • 迭代器生成新数组方法 ()

map( )  filter( )


1人推荐
随时随地看视频
慕课网APP