- 内建对象:
-由ES标准中定义的对象,在任何的ES实现中都可以使用-比如: Math String Boolean Number Function Object……、
- 宿主对象
-由JSD的运行环境提供的对象,目前主要指浏览器提供的对象,比如: BOM DOM
- 自定义对象
-由开发人员自己创建的对象
var obj = new Object( ); 等价于 var obj = { };
花括号内的语法: {属性名:属性值,属性名:属性值,…… }
例如:创建名为 obj2的对象,并添加 name,age,gender,test等属性。var obj2 = {name: "李斯”,age: 28,gender: "男"test:{name: "沙和尚 "} //也并非是嵌套了对象,只是test 这个属性也是一个对象而已}
代码如下(示例):
- //使用动态的方法创建名为student的对象
- var student1 = {};
- student1.name = 'lucy';
- student1.age = 18;
- student1.school = 'red-earth school';
- student1.language = function(){
- console.log('她会说法语哦!');
- }
- // 查看对象 student
- console.log(student1);
- student1.language()
- 构造函数与普通函数一样,构造函数习惯首字母大写
- 调用方式不同: 普通函数直接调用 例如 fun() 而构造函数需要使用 new 关键字来调用
- 使用同一个构造函数创建的对象,我们成为一类对象,而该构造函数称为 类, 通过该类创建的对象,称为该类的实例
立刻创建一个新的对象
将新建的对象设置为函数中this,在构造函数中可以使用 this 来引用新建的对象
逐行执行函数中的代码
将新建的对象作为返回值返回
代码如下(示例):
- function student3(name,age,school,language){
- // 其中this 指代的是此创建的对象;
- this.name = name;
- this.age = age;
- this.school = school;
- this.language = language;
- }
- // 调用构造函数 student
- var stu = new student3('Jack',18,'red-earth school',function(){
- console.log('她会说俄罗斯语哦!');
- });
- console.log(stu);
- stu.language();
语法:
对象 instanceof 构造函数
是,返回true 不是 返回false
-
- // 创建对象的三种方法
-
-
- // 使用对象字面量的形式创建名为 student 的对象
- var student = {
- name: 'Tom',
- age: 17,
- school: 'red-earth school',
- language: function () {
- console.log('他会说英语哦!');
- }
- }
- console.log(student);
- student.language()
-
-
- //使用动态的方法创建名为student的对象
- var student1 = {};
- student1.name = 'lucy';
- student1.age = 18;
- student1.school = 'red-earth school';
- student1.language = function(){
- console.log('她会说法语哦!');
- }
- // 查看对象 student
- console.log(student1);
- student1.language()
-
-
- // 使用构造函数的方法创建名为 student 的对象
- function student3(name,age,school,language){
- // 其中this 指代的是此创建的对象;
- this.name = name;
- this.age = age;
- this.school = school;
- this.language = language;
- }
- // 调用构造函数 student
- var stu = new student3('Jack',18,'red-earth school',function(){
- console.log('她会说俄罗斯语哦!');
- });
- console.log(stu);
- stu.language();
-
-
-