主题
JavaScript
JavaScript 是前端开发的核心语言。
ES6+ 特性
箭头函数
const add = (a, b) => a + b;解构赋值
const { name, age } = user;
const [first, second] = array;模板字符串
const message = `Hello, ${name}!`;Promise 和 async/await
async function fetchData() {
try {
const response = await fetch('/api/data');
const data = await response.json();
return data;
} catch (error) {
console.error('Error:', error);
}
}闭包
闭包允许函数访问其外部作用域的变量:
function createCounter() {
let count = 0;
return function() {
return ++count;
};
}原型链
JavaScript 使用原型链实现继承:
function Person(name) {
this.name = name;
}
Person.prototype.greet = function() {
return `Hello, I'm ${this.name}`;
};TypeScript
TypeScript 是 JavaScript 的超集,添加了静态类型系统。
基础类型
let name: string = 'John';
let age: number = 30;
let isActive: boolean = true;
let items: string[] = ['a', 'b', 'c'];接口
interface User {
id: number;
name: string;
email?: string; // 可选属性
}
const user: User = {
id: 1,
name: 'John'
};泛型
function identity<T>(arg: T): T {
return arg;
}
const result = identity<string>('hello');类型推断
TypeScript 可以自动推断类型:
let x = 10; // x 的类型是 number最佳实践
- 充分利用类型系统
- 使用接口定义数据结构
- 避免使用
any类型 - 启用严格模式