JS高级----------------->原型简单的写法(注意手动修改构造器的指向)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script>
    function Student(name, age, sex) {
        this.name = name;
        this.age = age;
        this.sex = sex;
    }
    //简单的原型写法
    Student.prototype = {
        //手动修改构造器的指向
        constructor: Student,
        height: 188,
        width: 55,
        study: function () {
            return this.name + "在学习";
        },
        eat: function () {
            return this.name + "在吃饭";
        }
    };

    var stu = new Student("Andy", 18, "男");
    console.log(stu.study());
    console.log(stu.eat());
    console.dir(stu);
    console.dir(Student);

    //注意需要手动修改构造器的指向
</script>
</body>
</html>

原文地址:https://www.cnblogs.com/cuilichao/p/9527581.html

时间: 2024-08-30 07:13:06

JS高级----------------->原型简单的写法(注意手动修改构造器的指向)的相关文章

JS高级---原型的简单的语法

原型的简单的语法 构造函数,通过原型添加方法,以下语法,手动修改构造器的指向 实例化对象,并初始化,调用方法 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>title</title> <script> function Student(name, age, sex) { this.name

JS高级---原型

原型 作用1 :节省空间,数据共享 function Person(name,age){ this.name=name; this.age=age; }//通过自定义构造函数来创建对象 Person.prototyp e.eat=function(){ console.log("我爱js"); }//通过原型来添加方法 var p1=new Person("小明",20); var p2=new Person("小红",30); console.

JS高级---原型和原型链

原型和原型链 原型链是一种关系, 实例对象和原型对象之间的关系,关系是通过实例对象中浏览器使用的原型(__proto__)来联系的 自定义构造函数,通过实例化,创建实例对象 实例对象中__proto__是原型,浏览器使用的 构造函数中的prototype是原型,程序员使用的 //使用对象---->使用对象中的属性和对象中的方法,使用对象就要先有构造函数 //构造函数 function Person(name,age) { //属性 this.name=name; this.age=age; //

JS高级---原型指向可以改变和原型链

原型指向可以改变和原型链 实例对象的原型__proto__指向的是该对象所在的构造函数的原型对象 构造函数的原型对象(prototype)指向如果改变了, 实例对象的原型(__proto__)指向也会发生改变 原型的指向是可以改变的 实例对象和原型对象之间的关系是通过__proto__原型来联系起来的,这个关系就是原型链 图示如下 代码观测console理解 //人的构造函数 function Person(age) { this.age=10; } //人的原型对象方法 Person.prot

js高级构造函数,实例对象和原型对象——prototype、__proto__和constructor构造器

一.前言 了解JavaScript面向对象,需要先了解三个名词: 构造函数,实例对象和原型对象. 注意:JavaScript中没有类(class)的概念,取而代之的是构造函数,两者类似却又有很大的差别. 先上代码,最常用的: function Person(name, age) { this.name = name; this.age = age; this.eat= function() { alert('吃西红柿') } } var person1 = new Person('小米', 28

第20篇 js高级知识---深入原型链

前面把js作用域和词法分析都说了下,今天把原型链说下,写这个文章费了点时间,因为这个东西有点抽象,想用语言表达出来不是很容易,我想写的文章不是简单的是官方的API的copy,而是对自己的知识探索和总结的过程,以及在这个过程碰到的问题都一一写出来,我想大多数人应该也有这个疑惑,然后带着疑惑去找答案,当你把这个疑惑解决之后,才觉得很有成就感.下面不多说了,开始说说什么是原型链.要想了解原型链,还是要从简单的开始,什么是原型?首先看下代码: function funcA() { this.show =

关于js高级里面的构造函数和原型

1.字面量创建方式 var obj={}; 2.new关键字 var obj=new Object(); 3.构造函数的方式 function Person(uname,age){ this.uname=uname; this.age=age; } var obj=new Person('刘德华','18'); 4.构造函数原型prototype function Star(uname, age) { this.uname = uname;     this.age = age; } Star.

关于js的原型链,__proto__,prototype的理解

首先声明参考博文,感谢 http://blog.sina.com.cn/s/blog_6c62f4330102wq0u.html http://blog.csdn.net/leadn/article/details/51781539 等作者,还有一些其他链接这里就不粘贴了 js中关于prototype的文章不少,今天自己写一点自己的理解 不喜欢上来就粘概念,因为如果概念能够理解,也不需要写这篇文章了. 关于原型链里面的东西,主要就是prototype,__proto__这两个属性难以理解,今天我

第十九篇 js高级知识---词法分析和AO 链

上面一篇文章说了js的作用域链,这一节算是对上面的延申,有一个典型的例子,首先看原来的一段代码: var name = "test"; function t() { var b = 1; if (b === 1) { var name = "test1"; } else { var name = "test2"; } console.log(name); } t(); 这段代码的结果是test1 这个肯定是没有什么问题了,但是如果把代码作如下修改