對象

對象
能夠從如下幾個方面概論:數組

  1. 數組是一組數據的有序集合
  2. 對象是一組數據無序的集合,擁有屬性方法
  3. 屬性:對象擁有的數據
  4. 方法:對象擁有的操做
  5. 內置對象:數組 set map 函數等.....
  6. let odj = { name(key鍵):25(值)}
  7. 當使用對象不存在得屬性,會獲得undefined

如何建立對象函數

  1. 聲明量 let obj = { };
  2. 構造函數 let obj = new object( );
    對象中某條數據的鍵對應的值不是函數,就對這條數據稱爲「屬性」

對象有哪些屬性:
增:code

  1. 建立時添加

例:let obj = {對象

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

}
obj.talk() //即是調用這個方法輸出 666rem

  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 調用被刪除得方法會報錯string

查:
console.log(obj.age)io

改:
obj.key = new value
例:
obj.gender = "man"
obj.gender = "female" //更改
改已有的,如沒有則新增
例:talk: function() {console

console.log(666)

}
obj.talk(); //666function

外部添加方法: 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); //若是沒有則返回布爾值falseconsole.log(「age」 in arr); //若是有則返回布爾值true

相關文章
相關標籤/搜索