js中對象的屬性名和屬性值


代碼
/**
 * 對象的屬性名
 * - 對象的屬性名不強制遵循標識符的命名規范,可以是任意的名字,但在開發中
 *   盡量遵循標識符的命名規范
 */
// 創建對象obj1
var obj1 = new Object();
// 添加屬性name
obj1.name = "唐僧";
console.log(obj1); // {name: "唐僧"}

/**
 * 如果要使用特殊的屬性名,不能采用"."的方式來操作,需要使用另一種
 * 方式:
 *    語法:對象["屬性名"] = 屬性值
 * 讀取時也用這種方式
 * 使用"[]"去操作屬性會更加的靈活,在"[]"可以直接傳遞一個變量,這樣
 * 變量值是多少就會讀取那個屬性
 */
obj1["888"] = 888;
obj1["###"] = '###';
console.log(`obj1["888"] = ${obj1["888"]}, obj1['888'] = ${obj1['888']}, obj1['###'] = ${obj1['###']}`); // obj1["888"] = 888, obj1['888'] = 888, obj1['###'] = ###
var k = '888';
// 將變量k放到[]中,用來讀取屬性值
console.log(`當k為'888'時, obj1[k] = ${obj1[k]}`); // 當k為'888'時, obj1[k] = 888

/**
 * 對象的屬性值
 * - 對象的屬性值可以是任意的數據類型,甚至也可以是一個對象
 */
// 創建另一個對象obj2
var obj2 = new Object();
obj2.address = '杭州市余杭區';
obj2.city = '杭州';
// 將對象obj2賦值給對象obj1的屬性
obj1.profile = obj2;
// 此時輸出對象obj1
console.log(obj1); // {888: 888, name: "唐僧", profile: {address: "杭州市余杭區", city: "杭州"}, ###: "###"}

/**
 * in運算符
 * - 通過該運算符可以檢查一個對象中是否存在指定的屬性,如果有則返回true,否則返回false
 * 語法:
 *     "屬性名" in 對象
 */
// 檢查對象obj1中是否存在屬性name
if ("name" in obj1) {
    console.log(`對象obj1中存在屬性name`); // 對象obj1中存在屬性name
} else {
    console.log(`對象obj1中不存在屬性name`);
}
// 檢查對象obj1中是否存在屬性city
if ("city" in obj1) {
    console.log(`對象obj1中存在屬性city`);
} else {
    console.log(`對象obj1中不存在屬性city`); // 對象obj1中不存在屬性city
}

查看源代碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM