📚 作用域与闭包
JavaScript中的作用域决定了变量的可访问范围。主要有以下几种类型:
- 全局作用域:在函数外部声明的变量
- 函数作用域:使用
var
声明的变量 - 块作用域:使用
let
/const
声明的变量
function example() {
let a = 10;
if (a > 5) {
const b = 20;
// 📌 这里可以访问a和b
}
// 📌 这里只能访问a
}
🔧 原型链与继承
每个对象都有一个原型对象,通过__proto__
属性连接。关键概念包括:
- 构造函数
- 原型对象
- 实例对象
function Animal(name) {
this.name = name;
}
Animal.prototype.speak = function() {
console.log(`${this.name} makes a noise.`);
};
let dog = new Animal("Rover");
dog.speak(); // 🐶 输出: Rover makes a noise.
📈 ES6+新特性速览
- 箭头函数:
const sum = (a, b) => a + b;
- 解构赋值:
let {x, y} = {x: 1, y: 2};
- 类语法:
class Person { constructor(name) { this.name = name; } }
- 模块化:
import { add } from './math.js';
🧠 高级概念进阶
想要深入理解JavaScript底层机制?推荐阅读:
JavaScript运行机制详解
包含事件循环、内存管理等深度解析内容