原生JavaScript插件开发[转]
一起学习下 插件的开发,原生的。 看了这文章
JavaScript插件开发从入门到精通系列---原生JavaScript插件开发
附上
读完小结:
看了下,比较小白的方式就是把一些代码,放到一个单独的js文件中, (刚开始就是这么玩的,还觉得挺美)
直接暴露在全局作用域。
-----------------
然后还有用一个建一个
var person1 = {
name: "peter",
age: 18,
sayHello: function() {
alert("hello! I am " + this.name);
}
};
person1.sayHello();
-----------------
然后还有一点工厂模式 , return 返回
function createPerson(name, age) {
var o = new Object();
o.name = name;
o.age = age;
o.sayHello = function() {
alert("hello! I am " + this.name);
};
return o;
}
var person1 = createPerson("peter", 18);
person1.sayHello();
---------------
然后还有一点 构造函数模式 ,使用时new一下
var Person = function(name, age) {
this.name = name;
this.age = age;
this.sayHello = function() {
alert("hello! I am " + this.name);
}
};
var person1 = new Person("peter", 18);
person1.sayHello();
var person2 = new Person("william", 19);
-------------
上面这些,写过点代码的,基本都会经常使用。
作者文章的大干货 ,精彩来了
原型模式
var MathUtil = function(version, programmer) { this.name = name; this.programmer = programmer; }; MathUtil.prototye = { // 将构造函数置为MathUtil,这里一定要将constructor重新设置回MathUtil,不然会指向Object的构造函数 constructor: MathUtil, // 加法 add: function(aaa, bbb) { var result= aaa + bbb; alert("result == " + result); }, // 减法 reduce: function(aaa, bbb) { var result= aaa - bbb; alert("result == " + result); }, // 乘法 multiply: function(aaa, bbb) { var result= aaa * bbb; alert("result == " + result); }, // 除法 divide: function(aaa, bbb) { var result = aaa / bbb; alert("result == " + result); } };
// 引用mathUtil.js文件后使用方式: var m1 = new MathUtil("william",["william"]); m1.programmer.push("william2"); var m2 = new MathUtil("peter",["peter"]); m1.programmer.push("peter2");
更多的回原文看下,多看几遍。