原型共享数据 原型简单语法 原型中方法是可以相互访问 实例对象属性方法层层搜索
利用原型共享数据
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script>// 什么样的数据是需要写在原型中的?// 需要共享的数据就可以写在原型中// 原型的作用之一:数据共享// 属性需要共享,方法也需要共享// 不需要共享的数据写在构造函数中,需要共享的数据就可以写在原型中// 构造函数function Student(name,age,sex){this.name = name;this.age = age;this.sex = sex;}// 所有学生的身高都是188,所有人的体重都是55// 所有学生都要每天写500行代码// 所有学生每天都要吃一个10斤的西瓜// 原型对象Student.prototype.height = "188";Student.prototype.weight = "55kg";Student.prototype.study = function(){console.log("学习,写500行代码");};Student.prototype.eat = function(){console.log("吃一个10斤的西瓜");};// 实例化对象,并初始化var stu = new Student("晨光",29,"女");console.dir(Student);console.dir(stu);// stu.eat();// stu.study();</script>
</head>
<body></body>
</html>
原型简单的语法
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script>// 构造函数function Student(name,age,sex){this.name = name;this.age = age;this.sex = sex;}// 简单的原型写法Student.prototype = {// 手动修改构造器的指向constructor:Student,height:"188",weight:"55kg",study:function(){console.log("学习好开心啊");},eat:function(){console.log("我要吃好吃的");}};var stu = new Student("段飞",20,"男");stu.eat();stu.study();console.dir(Student);console.dir(stu);// 原型对象// Student.prototype.height = "188";// Student.prototype.weight = "55kg";// Student.prototype.study = function(){// console.log("学习,写500行代码");// };// Student.prototype.eat = function(){// console.log("吃一个10斤的西瓜");// };// // 实例化对象,并初始化// var stu = new Student("晨光",29,"女");// console.dir(Student);// console.dir(stu);// stu.eat();// stu.study();</script>
</head>
<body></body>
</html>
原型中的方法是可以相互访问的
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script>// function Person(age){// this.age = age;// this.sayHi = function(){// console.log("hello");// // 打招呼的同时,直接调用吃的方法// // this.eat();// };// this.eat = function(){// console.log("吃东西啦");// this.sayHi();// };// }// // 实例对象的方法,是可以相互调用的// // 实例化对象,并初始化// var per = new Person(20);// // 调用方法// // per.sayHi();// per.eat();</script><script>// 原型中的方法,是可以相互访问的function Animal(name,age){this.name = name;this.age = age;}// 原型中添加方法Animal.prototype.eat = function(){console.log("动物吃东西");this.play();};Animal.prototype.play = function(){console.log("玩球");this.sleep();};Animal.prototype.sleep = function(){console.log("睡觉了");};var dog = new Animal("小苏",20);dog.eat();// 原型对象中的方法,可以相互调用</script>
</head>
<body></body>
</html>
实例对象使用属性和方法层层搜索
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><script>function Person(age,sex){// 年龄this.age = age;// 性别this.sex = sex;this.eat = function(){console.log("构造函数中的吃");};}Person.prototype.sex = "女";Person.prototype.eat = function(){console.log("原型对象中的吃");};var per = new Person(20,"男");// 男console.log(per.sex);per.eat();console.dir(per);/*** 实例对象使用的属性或者方法,先在实例中查找,找到了则直接使用* 找不到则去实例对象的__proto__指向的原型对象prototype中找,找到了则使用* 找不到则报错*/</script>
</head>
<body></body>
</html>
原型共享数据 原型简单语法 原型中方法是可以相互访问 实例对象属性方法层层搜索相关推荐
- java 统计汉字个数_Java简单统计字符串中汉字,英文字母及数字数量的方法
本文实例讲述了java简单统计字符串中汉字,英文字母及数字数量的方法.分享给大家供大家参考,具体如下: package org.zhy.demo.algorithm; /** * 有一个字符串,其中包 ...
- java 字符串 数字个数_Java简单统计字符串中汉字,英文字母及数字数量的方法...
本文实例讲述了Java简单统计字符串中汉字,英文字母及数字数量的方法.分享给大家供大家参考,具体如下: package org.zhy.demo.algorithm; /** * 有一个字符串,其中包 ...
- php节点对象,JavaScript_JavaScript中访问节点对象的方法有哪些如何使用,JavaScript中访问节点对象的方法 - phpStudy...
JavaScript中访问节点对象的方法有哪些如何使用 JavaScript中访问节点对象的方法有哪些? var obj = document.getElementById('fdafda'); va ...
- java猫抓老鼠_用猫抓老鼠的实例理解java中面向对象的编程与类和对象以及方法的概念...
今天看到马士兵讲的关于面向对象编程的思路,用了一个猫抓老鼠的例子,我觉得这个例子非常形象,于是写在这里,方便学习理解和以后查看 class cat{ //声明一个类–"猫" int ...
- Mysql 查询blob数据很慢,关于oracle中clob字段查询慢的问题及解决方法
关于oracle中clob字段查询慢的问题及解决方法 最近在用oracle的过程中用到了对blob字段模糊查询的问题,对oracle来说,我并不是高手,找了很多的资料终于能够查出来了. blob字段直 ...
- Vue中的vm和VueComponent的实例对象
关于vm和vc,vm为Vue的实例对象,vc为VueComponent的是对象. 一.vm 1.Vue的实例对象,以后简称vm. (1) vm的隐式原型属性指向Vue的原型对象. (2) VueCom ...
- python中关系运算符惰性求值_python对象属性惰性取值
python面向对象进阶 在知乎上面看到这个如何让python对象属性具有惰性求值的能力,认真学习了一番,记录一下. __setattr__.__getattr__.__delattr__ class ...
- 中 自动展示链接的内容_织梦DEDECMS文章内容中的图片自动添加ALT和title属性方法...
今天下载我资源网(www.xiazaiwo.net)要说的是织梦DEDECMS文章内容中的图片自动添加ALT和title属性,如果觉得不错,请分享给大家,也给大家做个参考.一起跟随小编过来看看吧! 织 ...
- java 方法重载 应用举例,Java 实例 - 重载(overloading)方法中使用 Varargs
以下实例演示了如何在重载方法中使用可变参数:/* author by w3cschool.cc Main.java */public class Main { static void vaTest(i ...
最新文章
- 负载均衡(SLB)使用最佳实践
- 7 1学会使用 Node 编写简单的前端应用
- 802.11e (Quality of Service) : EDCA
- Matlab的内部常数
- tomcat - JVM 配置
- Java中的同步集合与并发集合有什么区别?
- Effective Java之当心字符串连接的性能(五十一)
- 六. 异常处理7.throw:异常的抛出
- Spring Cloud 中 分布式事务解决方案 -- 阿里GTS的使用
- 嵌入式基础认识2:shell脚本的一些简单语法规则
- 深入理解计算机系统1——计算机系统漫游
- FPGA实现VGA显示(六)——————多字符显示及基于fpga的“打字机”实现
- maven依赖avro_在MapReduce中使用Avro
- 利用百度OCR实现验证码自动识别
- paip.web数据绑定 下拉框的api设计 选择框 uapi python .net java swing jsf总结
- 极域课堂管理系统软件V6.0 2016 豪华版
- 苹果手机网速慢_都2020年了,该不该换5G手机?
- 10015---SpringMVC--自定义视图
- .net 简单的后台合成图片
- python卷积神经网络预测股价_利用神经网络预测股票市场