JS面向对象
函数就是对象,对象就是函数。【当函数作为对象是,每个单词首字母都大写】
方法直接调用为函数,用new调用为对象。
JavaScript中没有类的语法,是用函数闭包(closure)模拟出来的,下面讲解的时候还是用C#中的类、构造函数的概念,JavaScript中String、Date等“类”都被叫做“对象”,挺怪,方便初学者理解,不严谨。JavaScript中声明类(类不是类,是对象)。
l由于js是动态语言所以创建对象的最直接的方式:
var obj=new Object();
obj.name=‘aa’;
obj.age=18;//要什么加什么。但是都是object类型。无法区分不同类型。
Example(写一个Person对象):
function Person() { } //ok,就这么简单。
如何使用Perosn对象?
var p=newPerson();// “var p” 不是 “Person p”。
p.Name=‘张三’;//动态语言,所以可以直接写。
p.Age=30;
p.SayHello=function() { alert(‘Hi~’); }
alert(p.Name);
alert(p[‘Age’]);//另外一种动态访问属性的方式。