ES6 部分新特性使用

箭头函数

复制代码
`// 箭头函数定义
const add = (a, b) => a + b;
console.log(add(1, 2)); // 输出3

// 箭头函数表达式
const nums = [1, 2, 3];
const sum = nums.reduce((total, num) => total + num, 0);
console.log(sum); // 输出6`

模板字符串

复制代码
``// 使用模板字符串拼接字符串
const name = 'Alice';
const age = 20;
console.log(`Name: ${name}, Age: ${age}`); // 输出 Name: Alice, Age: 20``

解构赋值

复制代码
`// 从数组中解构赋值
const [x, y] = [10, 20];
console.log(x); // 输出10
console.log(y); // 输出20

// 从对象中解构赋值
const { name, age } = { name: 'Alice', age: 20 };
console.log(name); // 输出Alice
console.log(age); // 输出20`

默认参数

复制代码
``// 设置默认参数
function greet(name = 'John') {
console.log(`Hello, ${name}`);
}
greet(); // 输出 Hello, John
greet('Alice'); // 输出 Hello, Alice``

块级作用域变量(使用letconst

复制代码
`// 使用let定义块级作用域变量
if (true) {
let x = 10;
console.log(x); // 输出10
} else {
console.log(x); // ReferenceError: x is not defined
}`

类(Class)定义(扩展了ES5的类语法)

复制代码
``class Person {
constructor(name) {
this.name = name;
}
greet() {
console.log(`Hello, ${this.name}`);
}
}
const person = new Person('Alice');
person.greet(); // 输出 Hello, Alice``

模块化:

复制代码
`// 导出模块
export const PI = 3.14159;
export function area(radius) {
return PI * radius * radius;
}

// 导入模块
import { PI, area } from './math';
console.log(PI); // 输出3.14159
console.log(area(5)); // 输出78.53981633974483`

解构赋值:

复制代码
`let [x, y] = [10, 20];
console.log(x); // 输出10
console.log(y); // 输出20

let { name, age } = { name: 'Alice', age: 20 };
console.log(name); // 输出Alice
console.log(age); // 输出20`

Promise:

复制代码
`let promise = new Promise((resolve, reject) => {
setTimeout(() => resolve('Success!'), 1000);
});
promise.then(result => console.log(result)); // 输出Success!(1秒后)`
相关推荐
wuhen_n2 小时前
TypeScript 强力护航:PropType 与组件事件类型的声明
前端·javascript·vue.js
wuhen_n2 小时前
组件设计原则:如何设计一个高内聚、低耦合的 Vue 组件
前端·javascript·vue.js
Lee川16 小时前
深度解构JavaScript:作用域链与闭包的内存全景图
javascript·面试
_Eleven17 小时前
Pinia vs Vuex 深度解析与完整实战指南
前端·javascript·vue.js
技术狂小子17 小时前
# 一个 Binder 通信中的多线程同步问题
javascript·vue.js
进击的尘埃18 小时前
Service Worker + stale-while-revalidate:让页面"假装"秒开的那些事
javascript
秋水无痕18 小时前
从零搭建个人博客系统:Spring Boot 多模块实践详解
前端·javascript·后端
进击的尘埃18 小时前
基于 Claude Streaming API 的多轮对话组件设计:状态机与流式渲染那些事
javascript
juejin_cn19 小时前
[转][译] 从零开始构建 OpenClaw — 第六部分(持久化记忆)
javascript
juejin_cn19 小时前
[转][译] 从零开始构建 OpenClaw — 第七部分(子智能体系统)
javascript