这里的内容没有太多深入的东西,更多的内容请移步麦子学院。 javascript在 HTML中变得越来越强大, HTML5中的WebGL等。但是我们书写Javascript的时候往往很随意,使用对象的封装是极好的。这里介绍Javascipt三种创建对象的方法。 使用关键字new创建对象 Js代码 [url=]file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif[/url] 1. 2. function Person(name, age) { 3. this.name = name; 4. this.age = age; 5. } 6. var p = new Person(); // 也可填充初始化属性,如new Person("lingceng", 22)
使用Object直接创建对象 可以看出,这种方法扩展很方便。 Js代码 [url=]file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif[/url] 1. 2. var obj = new Object(); // 这里也可写成 var = {}; 3. obj.name = "lingceng"; 4. obj.age = 22;
使用JSON创建(对象字面量的说法更准确,但JSON更好理解) 从Javascript1.2开始,创建对象有了更快捷的方式。 Js代码 [url=]file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif[/url] 1. var p = { 2. name: "lingceng", // "name":"lingceng这样加引号解析方式相同 3. gender: "male" 4. };
实践方式 结合构造函数和原型模式创建对象的方式很适合实践。 Js代码 [url=]file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif[/url] 1. function Person(name,age) 2. { 3. // 实例属性 4. // 实例时多份拷贝 5. this.name=name; 6. this.age=age; 7. } 8. 9. Person.prototype={ 11. //constructor属性始终指向创建当前对象的构造函数 12. // 因为原型被替换,所以需要恢复construtor的默认指向 13. constructor: Person, 14. showName:function(){ 15. alert("ShowName in prototype:"+this.name); 16. }, 17. showAge:function(){ 18. alert(this.age); 19. } 20. } 21. 22. var p = new Person("lingceng", 22); 23. p.showAge(); // 22
|