我真的搜索了很多,但我没有找到合适的结果。
我想知道,MomentJs
设计模式是什么?
这有点像Module Pattern
,但最终的公共 API 暴露于Prototype
:
在第 917 行:https ://github.com/timrwood/moment/blob/master/moment.js#L917
moment.fn = Moment.prototype = ...
多谢你们。
我真的搜索了很多,但我没有找到合适的结果。
我想知道,MomentJs
设计模式是什么?
这有点像Module Pattern
,但最终的公共 API 暴露于Prototype
:
在第 917 行:https ://github.com/timrwood/moment/blob/master/moment.js#L917
moment.fn = Moment.prototype = ...
多谢你们。
moment.js 的很多 api 设计都受到 jQuery 的启发。
构造函数不需要new
关键字并接受各种输入。
moment.fn
并且jQuery.fn
都是主要原型的曝光。
getter 和 setter 都使用相同的命名空间,并根据是否提供输入来充当 getter 或 setter。moment().date()
对moment().date(1)
,$().height()
对$().height(200)
。
它们都使用方法链,也称为流式接口模式。moment().date(1).month(5)
和$().hide().addClass('something')
。