17.数组

引用类型

定义数组的方式:

1.数组字面量    []

2.构造方法    new Array()

所以数组上面的方法全部来源于Array的prototype

稀松数组:数值的每一位上面不一定都有值,[1,2,,,5],但是仍然算作数组长度

var arr = new Array(10);表示长度为10的空数组,但是当只放一位时不能放浮点数.


ECMAScript  是js创作者定义的一些方法  es3.0    es5.0    es6.0

DOM 就是  使用js操作HTML元素

BOM 就是  使用js操作浏览器

后两者是浏览器厂商来补充的,所以兼容性都是出自于浏览器上


es3.0里面数组的一些方法:

改变原数组方法:push,pop,shift,unshift,sort,reverse,splice

不改变原数组的方法:concat,join --> split,toString,slice


push重写试试:

Array.prototype.push = function(){

    for(var i = 0 ; i<arguments.length ; i++){

            this.[this.length] = arguments[i];

    }

    return this.length;

}


splice(从第几位开始 , 截取多少的长度 , 在切口处添加新的数据)

splice = function(pos){

    pos += pos > 0 ? 0 : this.length

}


sort

1.必须写两形参

2.看返回值 

1)当返回值为负数时,那么前面的数放在前面

2)为正数,前面的放后面

3)0 , 不改变

arr.sort(function(a,b){

    //  a - b > 0 ? 1 : -1;

    return a - b;   //升序

    //return b - a;     //降序

})

给一个有序的数组乱序:

arr.sort(function(a,b){

    return Math.random() - 0.5;

})

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 9,700评论 0 13
  • 讲在前面 这次选的计划是源码阅读计划,因为之前花时间x重新再过了高程和权威,觉得得看一些实在的东西来提高自己。因此...
    临水照影233阅读 2,823评论 0 0
  • 单例模式 适用场景:可能会在场景中使用到对象,但只有一个实例,加载时并不主动创建,需要时才创建 最常见的单例模式,...
    Obeing阅读 6,401评论 1 10
  • 高水隆,位于三川省西部边缘的一座县城,占地面积较小,人口也不足一万,但却因靠近川水河,当地的水利和纺织业发展迅速,...
    DownQ阅读 2,865评论 1 0
  • codeblocks是一个跨平台的C/C++的IDE,页面简单好用,在写C/C++工程的时候其才采用自有的工程文件...
    UnderwoodY阅读 11,123评论 0 1