js中的prototype和__proto__
2016-01-30 00:00
465 查看
prototype是函数的属性,每个函数都拥有一个prototype属性;__proto__是一个对象拥有的内置属性,是new一个实例时动态添加的属性,也是js内部寻找原型链的属性。
prototype属性拥有一个constructor属性和一个__proto__属性,默认情况下constructor指向构造函数自身即fun.prototype.constructor == fun;对于普通对象,__proto__是该对象的原型链即fun.prototype,对于函数,__proto__是fun构造器即Function的prototype(Funtion.prototype)
对象在原型链查找属性时,是沿着__proto__查找的;函数的__proto__是Function.prototype即fun.prototype.constructor.__proto__,而普通对象的__proto__就是obj.__proto__即fun.prototype
prototype属性拥有一个constructor属性和一个__proto__属性,默认情况下constructor指向构造函数自身即fun.prototype.constructor == fun;对于普通对象,__proto__是该对象的原型链即fun.prototype,对于函数,__proto__是fun构造器即Function的prototype(Funtion.prototype)
对象在原型链查找属性时,是沿着__proto__查找的;函数的__proto__是Function.prototype即fun.prototype.constructor.__proto__,而普通对象的__proto__就是obj.__proto__即fun.prototype
function Animal () { } Function.prototype.say = function () { alert("function"); } Object.prototype.say = function () { alert("object") } Animal.say(); //function Animal.prototype.say();//object
相关文章推荐
- 旧知识的巩固,js多维数组的for定义,js自定义键值数组的定义
- 加入JavaScript 定时器开发俄罗斯方块模式的2048项目
- 双色球、大乐透、3D精选版!祝君好运(Javascript)
- js图片跑马灯效果
- JSP(三)JSTL表达式
- JavaScript世界的一等公民 - 函数
- JavaScript的定义及语法
- javascript的学习整理(二)
- javascript中的匀速运动(两种方式)
- JavaScript设计模式学习笔记2
- js阻止表单提交默认行为的两种方式
- JavaScript的学习整理(一)
- 使用Backbone将两个json对象合并到一个Collection对象中
- javascript实现减速运动
- javascript实现图片的淡入淡出
- javascript实现(分享到xxx)的小实例
- javascript中奇怪事件
- JSP自定义标签笔记
- 部署arcgis for JavaScript环境
- 利用JS做到隐藏div和显示div