zoukankan      html  css  js  c++  java
  • es6 对象方法

    ES6对象方法

     传统 
        
     // // 传统表示
        // let person = {
        //     'name':'zs',
        //     'say': function(){
        //         console.log('123')
        //     }
        // }
        // person.say()
        var name = 'zs';
        var age = 18;
        // let person = {
        //     name : name,
        //     age : age,
        // }
        // console.log(person)
      ES6中的简写
    var name = '李四';  var age = 18;
    var person1 = {  name,  age,  say() {
                console.log('ES6')    }    };
        console.log(person1); //{name: "李四", age: 18, say: ƒ}

      属性名的更新  用字面量定义一个对象的时候,可以用表达式作为对象的属性名或者方法名。

        

    var f = 'first';
        var n = 'Name';
        var s = 'say';
        var h = 'Hello';
        var person = {
            [f + n]: 'zhang',
            [s + h]() {
                return '你好吗'
            }
        };
        console.log(person.firstName)  //zhang  
        console.log(person.sayHello()) //你好吗

      Object.is()函数  比较两个值是否严格相等,或者说全等

    // // Object.is 判断两个值是不是相等   相当于===
        // var str = '12';
        // var num = 12;
        // console.log(str == num)  //true
        // console.log(str === num) //false
        // console.log(Object.is(str, num))//false

    Object.assign() 函数  将源对象的属性赋值到目标对象上。源对象可以是一个或者一个以上,而目标对象只有一个。

    //Object.assign     相当于concat
        // let target = {'a':1}
        // let origin = {'b':2,'c':3}
        // Object.assign(target,origin);
        // console.log(target)  //{'a':1,'b':2,'c':3}

    Object.getPrototypeOf() 函数  获取一个对象的prototype属性。

    function Person(){
    
        }
        Person.prototype.name = 'zs'
        Person.prototype  = {
            say(){
                console.log('hello')
            }
        }
        let allen = new Person();
        allen.say()
        console.log(Object.getPrototypeOf(allen) )  //{say: ƒ}

    Object.setPrototypeOf()  函数  设置一个对象的prototype属性

    //Object.setPrototypeOf()  设置原型属性   (接上)
        Object.setPrototypeOf(allen,{say(){console.log('hi')}})
        allen.say()

    Javascript中面向对象   将共用属性和方法写在函数的原型中

    function Dog(name) {  this.name = name;    }
        Dog.prototype = {     'type': '动物',   'say': function () {  console.log('名字叫' + this.name);    }    };
        var dog = new Dog('旺财');
        dog.say(); //名字叫旺财
  • 相关阅读:
    axios 配置baseURL 报错 Uncaught TypeError: Cannot set properties of undefined (setting 'baseURL')
    VSCode 添加 PHP debug 调试
    docker安装mysql,oracle,redis
    rocketmq入门笔记
    MyEclipse中导入jar包
    jar cvf 方式打包java web项目
    关于web工作流引擎概述
    企业服务总线解决方案剖析
    javaScript中取当前时间Date的前后时间
    json与对象转换的工具集合类
  • 原文地址:https://www.cnblogs.com/guirong/p/13598676.html
Copyright © 2011-2022 走看看