js对象基础概念

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>对象基础概念</title>
</head>
<body>
    <script>
        /*
            javascript对象
            
            对象是一个包含相关数据和方法的集合(通常由一些变量和函数组成,我们称之为对象里面的属性和方法).

        */
        /*
            1 对象定义
                1.1 利用对象字面量创建对象 {}
                1.2 利用 new Object 创建对象
                1.3 利用构造函数创建对象
        */
        
        // 1 对象定义
            // 1.1 利用对象字面量创建对象 {}
                // var obj = {};  // 创建了一个空的对象 
                var obj = {
                    uname: '张三疯',
                    age: 18,
                    sex: '男',
                    sayHi: function() {
                        console.log('hi~');
                    }
                }
                /*
                   (1) 里面的属性或者方法我们采取键值对的形式  键 属性名 : 值  属性值 
                   (2) 多个属性或者方法中间用逗号隔开的
                   (3) 方法冒号后面跟的是一个匿名函数
                    2. 使用对象
                   (1). 调用对象的属性 我们采取 对象名.属性名 . 
                */
                    
                console.log(obj.uname);
                // (2). 调用属性还有一种方法 对象名['属性名']
                console.log(obj['age']);
                // (3) 调用对象的方法 sayHi   对象名.方法名() 千万别忘记添加小括号
                obj.sayHi();
            
            // 1.2 利用 new Object 创建对象
                var obj1 = new Object(); // 创建了一个空的对象
                obj1.uname = '张三疯';
                obj1.age = 18;
                obj1.sex = '男';
                obj1.sayHi = function() {
                        console.log('hi~');

                    }
                    // (1) 我们是利用 等号 = 赋值的方法 添加对象的属性和方法
                    // (2) 每个属性和方法之间用 分号结束
                console.log(obj1.uname);
                console.log(obj1['sex']);
                obj1.sayHi();

                // 1.3利用构造函数创建对象
                    /* 
                        我们需要创建四大天王的对象  相同的属性: 名字 年龄 性别  相同的方法: 唱歌
                        构造函数的语法格式
                        function 构造函数名() {
                            this.属性 = 值;
                            this.方法 = function() {}
                        }
                        new 构造函数名();
                     */
                    function Star(uname, age, sex) {
                        this.name = uname;
                        this.age = age;
                        this.sex = sex;
                        this.sing = function(sang) {
                            console.log(sang);

                        }
                    }
                    var ldh = new Star('刘德华', 18, '男'); // 调用函数返回的是一个对象
                    // console.log(typeof ldh);
                    console.log(ldh.name);
                    console.log(ldh['sex']);
                    ldh.sing('冰雨');
                    var zxy = new Star('张学友', 19, '男');
                    console.log(zxy.name);
                    console.log(zxy.age);
                    zxy.sing('李香兰')
                    /*
                         1. 构造函数名字首字母要大写
                         2. 我们构造函数不需要return 就可以返回结果
                         3. 我们调用构造函数 必须使用 new
                         4. 我们只要new Star() 调用函数就创建一个对象 ldh  {}
                         5. 我们的属性和方法前面必须添加 this
                    */
                    


    </script>
</body>
</html>

  

posted @ 2021-09-12 14:02  飞渝  阅读(33)  评论(0)    收藏  举报