// 优势,兼容性好,所有浏览器都认识 // 但是代码复杂 (function(win,doc) { // 用来做插件的初始化配置 function Tabs (x) { var name = "zhangs" if(x.hasOwnProperty("name")) { this.name = x.name }else { console.error("默认参数没有填写请检查") } } Tabs.prototype = { getUserName: function() { console.log(this.name) } } win.Tabs = Tabs })(window,document) // es6 新的语法糖 // 一般旧的浏览器不支持 // babel 帮你把高版本的js语法,转换成低版本浏览器能够认识的语法 // class Tabs{ // constructor(name) { // this.name = name // } // getUserName() { // console.log(this.name) // } // }