乐趣区

关于javascript:对象

对象
能够从以下几个方面概论:

  1. 数组是一组数据的有序汇合
  2. 对象是一组数据无序的汇合,领有属性办法
  3. 属性:对象领有的数据
  4. 办法:对象领有的操作
  5. 内置对象:数组 set map 函数等 …..
  6. let odj = {name(key 键):25(值)}
  7. 当应用对象不存在得属性,会失去 undefined

如何创建对象

  1. 申明量 let obj = {};
  2. 构造函数 let obj = new object();
    对象中某条数据的键对应的值不是函数,就对这条数据称为“属性”

对象有哪些属性:
增:

  1. 创立时增加

例:let obj = {

name: zhangsan,  // 属性
age: 18  // 属性
talk(){  // 办法
    console.log(666)// 666
}

}
obj.talk() // 便是调用这个办法输入 666

  1. obj.key = value 例:obj.job = “loser”
  2. obj[string] = value 例:obj[“gender”] = “male”
  3. console.log(obj.age); //18
    let age = Symbol(“能够写正文”); // 申明一个 symbol 变量
    obj[age] = 14; // 给 symbol 变量赋值(通知他给那个对象增加)
    console.log(obj[age]); //age:14
    console.log(obj) // {name: ‘zhangsan’, age: 18, [Symbol(“能够写正文”)]: 14 }
    (如果不想批改属性值 但又想增加同名键 能够这样写)

删:
delete obj.key || remove obj.key
删除办法 delete obj. 办法名 (不要加小括号);
应用被删除得属性会 undefined 调用被删除得办法会报错

查:
console.log(obj.age)

改:
obj.key = new value
例:
obj.gender = “man”
obj.gender = “female” // 更改
改已有的,如没有则新增
例:talk: function() {

console.log(666)

}
obj.talk(); //666

内部增加办法:obj.eat = function () {

console.log("2")

}
obj.eat(); //”2″

拜访对象的属性必须通过对象 · 才行
例:let obj = {

name: "wang",
age: 18,
talk: function () {console.log(` 我叫 ${obj.name}`)
}

}
obj.talk(); //”wang”

怎么遍历对象的键值对
let arr = {

name: "zhangsan",
age: 18,
talk() {console.log(666);
}

}

for (let i of Object.keys(arr)) {// 键

console.log(i);  //name  age talk

}

for (let i of Object.values(arr)) {// 值

console.log(i);  //zhangsan  18 [Function: talk]

}

for (let i of Object.entries(arr)) {// 键和值

console.log(i);  //['name', 'zhangsan']
                   ['age', 18]
                   ['talk', [Function: talk] ]

}

判断对象中是否存在要查找得键
console.log(“mao”in arr); // 如果没有则返回布尔值 false
console.log(“age”in arr); // 如果有则返回布尔值 true

退出移动版