6.对象

时间:2020-05-28
本文章向大家介绍6.对象,主要包括6.对象使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

属性的简洁表示法

ES6允许对象的属性直接写变量,这时候属性名是变量名,属性值是变量值。

const age = 12;
const name = "Amy";
const person = {age, name};
person   //{age: 12, name: "Amy"}
//等同于
const person = {age: age, name: name}

方法名简写
const person = {
  sayHi(){
    console.log("Hi");
    }
  }
person.sayHi();
//"Hi" //等同于
const person = {
  sayHi:function(){
    console.log("Hi");
  }
}
person.sayHi();//"Hi"

属性名表达式

ES6允许用表达式作为属性名,但是一定要将表达式放在方括号内。

  注意点:属性的简洁表示法和属性名表达式不能同时使用,否则会报错。

const obj = {
 ["he"+"llo"](){
   return "Hi";
  }
}
obj.hello();  //"Hi"

对象的拓展运算符

拓展运算符(...)用于取出参数对象所有可遍历属性然后拷贝到当前对象。

基本用法
let person = {name: "Amy", age: 15};
let someone = { ...person };
someone;  //{name: "Amy", age: 15}
可用于合并两个对象
let age = {age: 15};
let name = {name: "Amy"};
let person = {...age, ...name};
person;  //{age: 15, name: "Amy"}

对象的方法

    is() ===比较两个值是否严格相等
console.log(NaN === NaN);
console.log(Object.is(NaN,NaN)); //false
        ***** assign() ***
        对象的合并
Object.assign(target,obj1,obj2....) //true
        
        返回合并之后的新对象
let newObj = Object.assign({},{a:1},{b:2});
console.log(newObj) //{a: 1, b: 2}

原文地址:https://www.cnblogs.com/sunny666/p/12984319.html