📜  对于每个对象 - Javascript (1)

📅  最后修改于: 2023-12-03 15:25:10.889000             🧑  作者: Mango

对于每个对象 - Javascript

在 Javascript 中,每个值都是一个对象或者一个原始值。原始值包括字符串、数字、布尔值、空值和未定义值。而对象则包括对象、数组、函数和日期等。

对象

对象是一种含有键值对的无序集合。可以使用 {}new Object() 来创建一个对象,也可以使用对象字面量来创建一个对象。

// 使用字面量创建对象
let person = {
  name: "Tom",
  age: 25,
  address: {
    city: "Beijing",
    street: "Xizhimen",
  },
};

// 使用构造函数创建对象
let car = new Object();
car.brand = "Toyota";
car.color = "blue";

对象的键名必须是字符串或者符号类型,而值可以是任何类型。可以使用点符号或者方括号来访问对象的属性。

// 访问对象的属性
console.log(person.name); // "Tom"
console.log(person["address"]["city"]); // "Beijing"
数组

数组是一种有序的集合,每个元素的值可以是任何类型。可以使用 []new Array() 来创建一个数组,也可以使用数组字面量来创建一个数组。

// 使用字面量创建数组
let fruits = ["apple", "banana", "orange"];

// 使用构造函数创建数组
let numbers = new Array(1, 2, 3);

数组的索引是从 0 开始的整数,可以使用方括号来访问数组的元素。

// 访问数组的元素
console.log(fruits[0]); // "apple"
console.log(numbers[2]); // 3

数组还提供了许多有用的方法,比如 push()pop()shift()unshift() 等,可以方便地对数组进行操作。

// 对数组进行操作
fruits.push("watermelon"); // ["apple", "banana", "orange", "watermelon"]
numbers.pop(); // [1, 2]
函数

函数是一段可重复执行的代码块,可以接受参数并返回值。可以使用 function 关键字定义一个函数,也可以使用箭头函数来定义一个函数。

// 定义一个函数
function add(x, y) {
  return x + y;
}

// 箭头函数
let square = (x) => x * x;

函数可以作为值来传递,可以作为对象的属性或者数组的元素。可以使用 call()apply()bind() 等方法来更改函数的 this 值以及传入参数。

// 函数作为对象的属性
let person = {
  name: "Tom",
  sayHi: function() {
    console.log("Hi, my name is " + this.name);
  }
};

person.sayHi(); // "Hi, my name is Tom"

// 使用 call() 方法调用函数
let numbers = [1, 2, 3];
let max = Math.max.call(null, ...numbers);
console.log(max); // 3
日期

日期是 JavaScript 中的一种对象,用来表示特定的日期和时间。可以使用 new Date() 来创建一个日期对象。

// 创建一个日期对象
let date = new Date();
console.log(date); // "Mon Dec 27 2021 22:36:12 GMT+0800 (中国标准时间)"

日期对象提供了许多有用的方法,比如 getFullYear()getMonth()getDate()getHours()getMinutes()getSeconds() 等,可以方便地获取日期的各个部分。

// 获取日期的各个部分
console.log(date.getFullYear()); // 2021
console.log(date.getMonth()); // 11
console.log(date.getDate()); // 27
console.log(date.getHours()); // 22
console.log(date.getMinutes()); // 36
console.log(date.getSeconds()); // 12

除此之外,日期对象还提供了许多其他的方法,可以用来比较日期、计算日期之间的差距、转换日期格式等。