**一、JavaScript 对象 (Objects)**
JavaScript 的对象是一种无序键值对的数据结构,在语法上以大括号 `{}` 包裹多个属性名-属性值对表示:
javascript
let person = {
name: "John",
age: 30,
occupation: "Software Engineer"
};
在此例中,“person”就是一个包含三个属性的对象:`name`, `age` 和 `occupation` 。每个属性都有一个对应的值,并可以通过点记法或方括号记法来访问这些属性:
javascript
console.log(person.name); // 输出:"John"
console.log(person['age']); // 输出:30
此外,JS 对象还支持原型继承机制以及通过 Object.create() 方法创建新对象等特性,进一步丰富了它的功能和应用场景。
**二、JavaScript 集合**
1. **数组(Array)**
数组是一个有序元素列表,可通过索引进行访问。它是 JS 最基础也是最常见的集合形式:
javascript
let fruits = ["Apple", "Banana", "Cherry"];
console.log(fruits[0]); // 输出:“Apple”
提供了一系列方法用于操作数组内容,比如 push(), pop(), shift(), unshift(), splice() 等增删改查的方法,还有 forEach(), map(), filter() 等高级迭代工具函数。
2. **Map 结构**
ES6 引入了一种新的内建对象——Map,它允许任何类型的唯一值作为 key,而不仅仅限于字符串,这使得它可以更灵活地储存自定义关联关系。
javascript
const myMap = new Map();
myMap.set(1, 'one');
myMap.set('two', 2);
console.log(myMap.get(1)); // 输出:"one"
同时也提供 size 属性获取成员数量,clear 清空所有映射,delete 删除指定项等功能。
3. **Set 结构**
Set 类似于数学中的“集”,不允许有重复值的存在,主要用于去重或者判断某个值是否存在的情况。
javascript
let uniqueFruits = new Set(["apple", "banana", "cherry", "apple"]);
for(let fruit of uniqueFruits){
console.log(fruit)
} // 只会输出一次 “apple”, 其他依次正常输出。
总结来说,无论是基于键值对模式的高度可定制化的 Objects,还是多样形态满足不同需求的 Arrays, Maps, Sets ,都是构成复杂应用及高效处理数据的关键要素。理解并熟练运用这两种基本构造块,对于提升开发效率与代码质量具有重要意义。