美文网首页
javascript对象继承顺序、分类和内置Math对象

javascript对象继承顺序、分类和内置Math对象

作者: ssttIsme | 来源:发表于2019-12-18 22:24 被阅读0次

    javascript对象继承顺序、分类和内置Math对象

    一、对象的继承顺序

    所有对象都是从Object对象继承过来的

    首先访问自己本身方法->自己本身原型方法->父类方法->父类原型方法->祖父方法->...

        Object.prototype.say=function () {
          return "顶层方法";
        };
        function Person() {
    
        }
        function Teacher() {
    
        }
        Teacher.prototype=new Person();
        var zhangsan=new Teacher();
        document.write(zhangsan.say());
    

    输出 顶层方法

    如果父类有方法就会继承,只要找到这个方法就不会向上访问

        Object.prototype.say=function () {
          return "顶层方法";
        };
        function Person() {
            this.say=function () {
              return "父类方法";
            };
        }
        function Teacher() {
    
        }
        Teacher.prototype=new Person();
        var zhangsan=new Teacher();
        document.write(zhangsan.say());
    

    输出 父类方法

        Object.prototype.say=function () {
          return "顶层方法";
        };
        function Person() {
            this.say=function () {
              return "父类方法";
            };
        }
        Person.prototype.say=function () {
          return "父类原型方法";
        };
        function Teacher() {
    
        }
        Teacher.prototype=new Person();
        var zhangsan=new Teacher();
        document.write(zhangsan.say());
    

    输出 父类方法

        Object.prototype.say=function () {
          return "顶层方法";
        };
        function Person() {
           /* this.say=function () {
              return "父类方法";
            };*/
        }
        Person.prototype.say=function () {
          return "父类原型方法";
        };
        function Teacher() {
    
        }
        Teacher.prototype=new Person();
        var zhangsan=new Teacher();
        document.write(zhangsan.say());
    

    输出 父类原型方法

        Object.prototype.say=function () {
          return "顶层方法";
        };
        function Person() {
           this.say=function () {
              return "父类方法";
            };
        }
        Person.prototype.say=function () {
          return "父类原型方法";
        };
        function Teacher() {
            this.say=function () {
                return "本身方法";
            }
        }
        Teacher.prototype=new Person();
        var zhangsan=new Teacher();
        document.write(zhangsan.say());
    

    输出 本身方法

        Object.prototype.say=function () {
          return "顶层方法";
        };
        function Person() {
           this.say=function () {
              return "父类方法";
            };
        }
        Person.prototype.say=function () {
          return "父类原型方法";
        };
        function Teacher() {
            this.say=function () {
                return "本身方法";
            }
        }
        Teacher.prototype=new Person();
        Teacher.prototype.say=function(){
          return "本身原型方法";
        };
    
        var zhangsan=new Teacher();
        document.write(zhangsan.say());
    

    输出 本身方法

        Object.prototype.say=function () {
          return "顶层方法";
        };
        function Person() {
           this.say=function () {
              return "父类方法";
            };
        }
        Person.prototype.say=function () {
          return "父类原型方法";
        };
        function Teacher() {
            /*this.say=function () {
                return "本身方法";
            }*/
        }
        Teacher.prototype=new Person();
        Teacher.prototype.say=function(){
          return "本身原型方法";
        };
    
        var zhangsan=new Teacher();
        document.write(zhangsan.say());
    

    输出 本身原型方法

    二、对象的分类

    2.1内置对象

    2.1.1Global(不可访问和创建)

    1.escape(字符串参数) 对字符串进行编码
    2.unescape(字符串参数) 对编码的字符串进行解码
    3.Number() 转换成数值类型
    4.String() 转换成字符串类型
    5.Boolean() 转换成布尔类型
    6.parseInt() 将字符串转换为整型
    7.parseFloat() 转换成小数
    8.isNaN() 判定一个数能否能转换为数值类型
    9.isFinite() 判断一个数是否为有穷.(将不是有穷的数或不能转换为数值类型的数返回假)
    10.eval() 将字符串转换为javascript命令执行

    2.1.2Math

    格式:Math.方法(参数)
    1.取绝对值
    Math.abs();

        document.write(Math.abs(-3.14)); //输出 3.14
    

    2.取近似整数(四舍五入)
    Math.round()

        document.write(Math.round(2.5)); //输出 3
    

    3.对数字进行下取舍
    Math.floor()

        document.write(Math.floor(2.9)); //输出 2
    

    4.对数字进行上取舍
    Math.ceil()

        document.write(Math.ceil(2.1)); //输出 3
    

    5.取最大值或最小值
    Math.max(参数...)
    Math.min(参数...)

        document.write(Math.max(2,4,8,9,1,2)); //输出 9
        document.write("<br/>");
        document.write(Math.min(2,4,8,9,1,2)); ////输出 1
    

    6.取随机数
    Math.random() 取0-1的随机数

        document.write(Math.random()); //输出 0.49319916100515293
        document.write("<br/>");
        document.write(Math.random()*100); //输出 76.40631421971165
        document.write("<br/>");
        document.write(Math.floor(Math.random()*100)); //输出 96
    

    2.2本地对象

    Array、Number、String、Boolean、Function、RegExp(正则对象)

        var arr=new Array(1,2,3);
        document.write(arr);
        var str=new String("Amy");
        document.write(" "+str); //输出 1,2,3 Amy
    

    2.3宿主对象

    DOM BOM

    相关文章

      网友评论

          本文标题:javascript对象继承顺序、分类和内置Math对象

          本文链接:https://www.haomeiwen.com/subject/wxjpnctx.html