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秒后)`
相关推荐
知远同学5 小时前
Anaconda的安装使用(为python管理虚拟环境)
开发语言·python
小徐Chao努力5 小时前
【Langchain4j-Java AI开发】09-Agent智能体工作流
java·开发语言·人工智能
CoderCodingNo5 小时前
【GESP】C++五级真题(贪心和剪枝思想) luogu-B3930 [GESP202312 五级] 烹饪问题
开发语言·c++·剪枝
2501_946230985 小时前
Cordova&OpenHarmony通知中心实现
android·javascript
南山安5 小时前
JavaScript 函数柯里化:从入门到实战,一文搞定(面试可用)
javascript·面试·函数式编程
kylezhao20195 小时前
第1章:第一节 开发环境搭建(工控场景最优配置)
开发语言·c#
啃火龙果的兔子5 小时前
JavaScript 中的 Symbol 特性详解
开发语言·javascript·ecmascript
栀秋6665 小时前
你会先找行还是直接拍平?两种二分策略你Pick哪个?
前端·javascript·算法
漂流瓶jz6 小时前
PostCSS完全指南:功能/配置/插件/SourceMap/AST/插件开发/自定义语法
前端·javascript·css
热爱专研AI的学妹6 小时前
数眼搜索API与博查技术特性深度对比:实时性与数据完整性的核心差异
大数据·开发语言·数据库·人工智能·python