首页 > 代码库 > js:数据结构笔记1---数组

js:数据结构笔记1---数组

JS中数组:

  • 只是一种特殊的对象,比其他语言中效率低;
  • 属性是用来表示偏移量的索引;在JS中,数字索引在内部被转化为字符串类型(这也是为什么写对象属性的时候可以不叫引号),因为对象中的属性必须是字符串类型;

操作:

  • 判断:isArray();
  • 复制:
    • 浅复制:
      var arr1 = arr2;
    • 深复制:
      function copy(arr1) {   var arr2 = [];   for(var i = 0; i < arr1.length; i++) {      arr2[i] = arr1[i];   }   return arr2;}
  • 查找: indexOf/lastIndexOf;
  • 由已有的数组创建:concat()/splice();
  • 添加:push()/unshift()/splice()/arr[arr.length];
  • 删除:pop()/shift()/splice();
  • 排序:reverse()/sort()[字典顺序排序];
    数字正序排序:function compare(num1,num2) {   return num1 - num2;};字符正序排序:function compare(str1,str2) {   if(str1 > str2) return 1;   else return -1;}字典顺序:0-9A-Za-z
  • 与字符串:splite();  join()/toString();
  • 迭代:
    • 不产生新数组:forEach()/every()/some()/reduce()/reduceRight();
    • 产生新数组:map()/filter();

 

js:数据结构笔记1---数组