• JavaScript 对象特性(任务)


    任务

    1.任务介绍

    定义一个Student类作为Person类的子类,在Student类中继承父类的walk()方法、重新定义父类的sayHello()方法并添加Student类自己的sayGoodBye()方法。

    2.任务目标

    理解JavaScript面向对象的四大特性并掌握创建对象的方法。

    3.实现思路

    (1)选用构造函数模式创建对象,并且将属性为方法的属性定义到属性之外。

    (2)全局变量是绑定在window对象上的,是window对象的属性。

    <html>

      <head>
        <title>类的特性案例</title>
      </head>
        <body>
        <script type="text/javascript">
        function Person(firstName)
        {
        this.firstName = firstName;
        }
        Person.prototype.walk = function()
        {
        console.log("I'm walking");
        }
        Person.prototype.sayHello = function()
        {
        console.log("Hello,I am"+this.firstName);
        }
        function Student(firstName,Subject)
        {
        Person.call(this,firstName);
        this.Subject=Subject;
        }
        Student.prototype = Object.create(Person.prototype);
        Student.prototype.sayHello = function()
        {
        console.log("Hello,I am"+this.firstName+",I am Student"+this.Subject);
        }
        Student.prototype.sayGoodBye = function()
        {
        console.log("goodbye");
        }
        var s = new Student("带土","数学");
        s.walk();
        s.sayHello();
        s.sayGoodBye();
        console.log(s instanceof Person);
        console.log(s instanceof Student);
        </script>
      </body>
    </html>

    这样Student拥有了3个方法,一个是完全从父类那里来的walk方法;第二个sayHello方法是父类也有,Student方法也有,但是重写了出,就调用自己的;第三个是Student自己所独有的方法。

    我们可以通过instanceof来判断一个对象是不是类的实例。

    运行结果如下:

     

  • 相关阅读:
    尚硅谷面试第一季-05递归与迭代
    尚硅谷面试第一季-04方法的参数传递机制
    尚硅谷面试第一季-03类初始化和实例初始化
    python爬爬爬之单网页html页面爬取
    python之花瓣美女下载
    (转载博文)VC++API速查
    (转载博文)MFC 窗口句柄获取
    全局变量的声明
    python图片小爬虫
    Opencv2.4.4作图像旋转和缩放
  • 原文地址:https://www.cnblogs.com/daitu/p/javascript.html
Copyright © 2020-2023  润新知