Javascript-对象

1.对象定义:

 (1)现实生活:具体的事物,而不是泛指的集合

 (2)js中:是一组无序的相关属性和方法的集合,如字符串、数值、数组、函数等。

2.调用采用对象名.方法名(),对象名.属性 对象名['属性名']。

3.创建对象

方法1:创建对象: '{}', 采用键值对方法,多个属性和方法用逗号隔开,方法要用function

var obj = {};//创建了一个空对象
    var obj = {
        uname: '张三',
        age: 18,
        sex: '男',
        sayHi: function () {
            console.log('Hi~');
        }
    }
    console.log(obj.uname);
    console.log(obj['age']);
    obj.sayHi();

方法2:new 方法

var obj = new Object();//空对象
    obj.uname = '张三';
    obj.age = 19;
    obj.sex = '男';
    obj.sayHi = function () {
        console.log('Hi~');
    } 

1和2运行结果:

方法3:用构造函数创建

        (前面两种方法是能创建一个对象),将相同属性和方法封装到函数里面。

        构造函数首字母大写,不需要返回return结果,属性方法前用this,调用构造函数必须要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, '男');//new就可生成一个对象
    console.log(typeof (ldh));//返回的是对象
    console.log(ldh.name);
    console.log(ldh['sex']);
    ldh.sing('冰雨');

运行结果

王者荣耀英雄构造函数例子 

    function Hero(uname, kind, power) {
        this.name = uname;
        this.kind = kind;
        this.power = power;
        this.attack = function (action) {
            console.log(action);
        }
    }
    var lp = new Hero('廉颇', '力量型', '500血量');
    var hy = new Hero('后裔', '射手型', '100血量');
    lp.attack('近战');
    hy.attack('远战');
    console.log(lp.power); 

 4.变量、属性、函数、方法的区别:

    ·变量和属性都是用来存储数据的

    ·变量可要声明并赋值,单独存在;属性不需声明,用的时候必须要有对象

    函数和方法都是实现某种功能,做某件事

    函数单独声明,调用fn();方法调用要有对象

构造函数和对象的区别:前者是泛指某一大类,后者是具体的事物

5.练手:分别用上面3中创建对象的方法对下面个例子创建对象

案例1(方法1):创建电脑对象,有颜色,重量,品牌,型号,可以看电影,打游戏和敲代码

        var computer = {
         color: 'pink',
         weight: 2,
         brand: '联想',
         model: 'xxxxx',
         watchMovie: function () {
             console.log(我可以看电影);
         },
         listenMusic: function () {
             console.log(我可以看电影);
         },
         codding: function () {
             console.log(我可以看电影);
         }
     }
     console.log(computer);

 

 案例2(方法2):创建一个按钮对象,对象中包含宽、高、背景颜色、以及点击行为

    var button = new Object();
    button.width = 50;
    button.height = 20;
    button.color = 'blue';
    button.act = function () {
        console('我会点击');
    }
    console.log(button);

 案例3(方法3):创建一个车对象,有重量,颜色,品牌,可载人,拉货,耕田

        function Car(weight, color, brand) {
        this.weight = weight;
        this.color = color;
        this.brand = brand;
        this.act = function (action) {
            console.log(action);
        }
    }
    var mycar = new Car('200', 'black', '蔚来');
    console.log(mycar.brand);
    mycar.act('载人');
    mycar.act('耕田');

 

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值