博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学Js之prototype
阅读量:7258 次
发布时间:2019-06-29

本文共 959 字,大约阅读时间需要 3 分钟。

 

每个Javascript对象(Object.prototype和null除外)都从原型里继承属性

初看这句话并没有什么很深的感触,所以拆分一下,Js对象 <--属性-- 原型
1、Js对象

  1. <script>
  2.         var dog = {};
  3. </script>

这是一只刚出生的小狗,小风还没有来得及为他起名,当然,这个小家伙自己,也是迷迷糊糊,懵懵懂懂
2、属性
新生的喜悦总会让人怀旧,主人想起了儿时的动画片,那只像棉花糖一般的可爱小狗,起了一个好听的名字

  1. <script>
  2.         dog.name = '小白';
  3. </script>

是时候教他唱一首熟悉的歌谣了,小风默默地想到

  1. <script>
  2.         dog.song = '大象,大象,你的鼻子为什么那么长?!';
  3. </script>

费了九牛二虎加吃奶的努力,小白终于get了新技能

  1. <script>
  2.         dog.sing = function(){
  3.                 console.log(this.song);
  4.         };
  5. </script>
复制代码

3、原型
时光总是把人抛,小白生了小小白,小小白生了小小小白,每次都要教他们唱歌,实在是太累了

  1. <script>
  2.         function Dog(name){
  3.                 this.name = name;
  4.                 this.song = '大象,大象,你的鼻子为什么那么长?!';
  5.         }
  6.         Dog.prototype.sing = function(){
  7.                 console.log(this.song);
  8.         }
  9. </script>

对象可以从原型中继承属性,
所以小小白们在出生时,

  1. <script>
  2.         var dogn = new Dog('我也不知道是第多少只小白了');
  3. </script>

便get了sing这个新技能。

  1. <script>
  2.         dogn.sing(); //console.log('大象,大象,你的鼻子为什么那么长?!');
  3. </script>
复制代码

而且只要他们愿意,他们可以自由的歌唱

  1. <script>
  2.         dogn.song = '想唱就唱,我就是我,不一样的烟火~~~~';
  3.         dogn.sing();
  4. </script>
复制代码

转载于:https://www.cnblogs.com/FineDay/articles/4803676.html

你可能感兴趣的文章
JAVA jdbc(数据库连接池)学习笔记(转)
查看>>
c#调用webservices
查看>>
CentOS 网络设置修改
查看>>
删除重复项,保留最大值
查看>>
项目开发中的一些注意事项以及技巧总结
查看>>
JDK环境配置记录
查看>>
模型的深度探究
查看>>
codeforces Round #354 (Div. 2) A
查看>>
自用VS Code 上的Markdown 编辑器css
查看>>
判断字符串中是否含有汉字及其汉字的个数
查看>>
mysql Can't connect to local MySQL server through socket 问题解决
查看>>
linux 技术网站
查看>>
jQuery使用示例详解
查看>>
Swift 数据类型
查看>>
数据结构 queue
查看>>
Go语言中的方法(Method Sets)
查看>>
简单的安卓音乐播放器
查看>>
svn提交代码
查看>>
关于头文件
查看>>
DDGScreenShot—图片擦除功能
查看>>