属性:特征,外貌
行为:做的事情,动词
//利用字面量创建JS对象 var person = { name: 'Aipo', age: 23, sex: '女', //类似匿名函数的样式 声明对象方法 sayHi: function () { console.log(this.name + '说了一句hi~'); } } //利用 new Object 创建对象 var person = new Object(); person.name ='Aipo'; person.age = 23; person.sex = '女'; person.sayHi = function () { console.log(this.name + '说了一句hi~'); }
person.sayHi();
//构造函数使用例子 function Member(uname, age, sex) { this.name = uname; this.age = age; this.sex = sex; this.sayHi = function () { console.log('大家好,我叫' + this.name + ',我已经' + this.age + '岁了。我性别为' + this.sex + '。见到你们很高兴'); } } //输入属性 实例化 var uesr=new Member('Aipo',23,'女'); //使用方法 uesr.sayHi();//输出:大家好,我叫Aipo,我已经23岁了。我性别为女。见到你们很高兴
要调用构造函数我们需要在其前面加一个new关键字,所以主要就是new在其作用,在执行new关键字后,很明显,他跟以往的函数调用就不同了,他会依次执行以下步骤:
1. new过后会产生一个空对象,作为一个返回的对象实例
2. 将空对象的原型指向了构造函数的prototype属性
3. 将空对象的值赋值给构造函数里面的this值
4. 开始执行构造函数里的代码(传入给这个新对象 属性和方法)
5. 返回这个对象