Dropdown.DEFAULTS是constructor 和原型有什么关系,有什么用呢

Dropdown.DEFAULTS是constructor 和原型有什么关系,有什么用呢

function Dropdown(elem, options) {
this.$elem = $(elem);
this.$layer =  this.$elem.find(".dropdown-layer");
this.activeClass =  options.active + '-active';

this.$layer.showHide(options);

this.$elem.hover($.proxy(this.show,this),$.proxy(this.hide,this));
this.defaults = {
css3: false,
js: false,
animation: 'fade'
}
};

Dropdown.DEFAULTS = {
css3: true,
js: true,
animation: 'fade',
active:'dropdown'
};


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕慕子 2019-04-24 18:24:07

同学你好,  1、constructor是原型对象prototype中一个的属性,用来表示引用的函数对象。示例:

http://img1.sycdn.imooc.com//climg/5cc036310001bedc08040156.jpg

在构造函数Person的原型对象上有一个constructor属性, 指向函数对象也是Person。 

2、一般在prototype原型上编写函数可以节约资源提高运行效率。例:

http://img1.sycdn.imooc.com//climg/5cc038cc00013eee05580123.jpg

视频中在构造函数中在prototype上定义show方法, 就不用每次实例化的时候在声明一个show方法了

这几节内容的难度都比较大, 同学暂时没有理解也没有关系, 可以多听几遍, 参考老师讲的案例,掌握如何使用构造函数的形式封装方法, 如果遇到不明白的可以继续在问答区提问, 我们会继续为你解答的。 

如果帮助到了你, 欢迎采纳

祝学习愉快~~~

好帮手慕慕子 2019-04-24 14:57:26

同学你好, Dropdown.DEFAULTS是一些默认的参数,相当于常量, 这里将构造函数看做一个对象, 声明了对象的属性DEFAULTS, 这样就不需要在每次实例化Dropdown这个构造函数的时候重新声明一次DEFAULTS了。

如果帮助到了你,欢迎采纳

祝学习愉快~~~


  • 提问者 浑俗和光233 #1
    就是constructor里面是变量,proto里面是函数的意思吗
    2019-04-24 17:28:32
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
组件化思想开发电商网页 18版
  • 参与学习           人
  • 提交作业       467    份
  • 解答问题       4826    个

本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师