现代JavaScript教程 数据类型
发表于:2021-05-31原始类型的方法
JavaScript有7种原始类型,原始类型是可以当作对象
使用内置方法的。
//创建对象
let user = new Object(); // “构造函数” 的语法
let user = {}; // “字面量” 的语法
let user = { // 创建对象
name: "John", // 属性 键 "name",值 "John"
age: 30, // 属性 键 "age",值 30
num: 4,
"likes cat": true, //多词属性
};
user.isAdmin = true; //添加属性
delete user.num;//移除属性
//访问对象
alert( user.name ); // John
alert( user.age ); // 30
alert( user.isAdmin ); // true
alert( user["likes cat"] );//访问多词属性,删除也一样
let key = "name";
alert(user[key]);//当使用变量当名称访问时应该加[]
//计算属性
let fruit = "age";
let bag = {
[fruit]: 5, // 属性名是从 fruit 变量中得到的
[fruit + 'Num'] : 5 //组成ageNum
};
console.log(bag.age);//得到5
console.log(bag.ageNum);//得到5
//属性值简写
function makeUser(name, age) {
return {
name: name,
age: age,
};
}
let user = makeUser("John", 30);
console.log(user.name); // John
//可以简写成:
function makeUser(name, age) {
return {
name,
age,
num : 30 //可以混用
};
}
//in操作符
//JavaScript中不存在的属性也不会报错,会返回undefined
let user = {};
console.log( user.noSuchProperty === undefined ); //true 没有这个属性
console.log("noSuchProperty" in user) //in用法 false 不存在(左边可以是个变量,检查与值同名的属性)
//以上2个方法区别类似于空值合并的情况,当属性存在但值时undefined是第一个方法无法知道。
"use strict"; 这条指令应该出现在最前面,否则无法激活
现代 JavaScript 支持 “classes” 和 “modules”,就不需要在使用这条指令,他们默认激活