ECMAScript(或称为ES)是JavaScript语言的核心规范,它定义了一套标准的语法和功能,使得JavaScript代码在不同的浏览器和环境中能够保持一致的行为。下面是一些ECMAScript的常用语法:
-
变量声明:
var
:传统的变量声明方式,在同一作用域内可以重新赋值且可能会发生变量提升(hoisting)。let
:在块级作用域内有效,不能在同一作用域重复声明,没有变量提升现象。const
:声明常量,一旦赋值后不能再改变其值,同样具有块级作用域。
-
解构赋值:
- 可以从数组或对象中提取数据,赋值给不同的变量。
javascript复制代码
let [a, b] = [1, 2]; // a = 1, b = 2 | |
let { key1, key2 } = { key1: 'value1', key2: 'value2' }; // key1 = 'value1', key2 = 'value2' |
-
模板字符串(也称为模板字面量):
- 允许嵌入表达式,并支持多行字符串。
javascript复制代码
let name = 'Alice'; | |
let greeting = `Hello, ${name}!`; // Hello, Alice! |
-
对象简写语法:
- 允许直接写入变量名和值作为对象的属性和值。
javascript复制代码
let name = 'Bob'; | |
let obj = { name }; // { name: 'Bob' } |
-
方法简写:
- 在对象字面量中直接定义方法,而不需要使用冒号和函数关键字。
javascript复制代码
let obj = { | |
sayHello() { | |
console.log('Hello!'); | |
} | |
}; |
-
参数默认值:
- 在函数定义时可以为参数设置默认值。
javascript复制代码
function greet(name = 'World') { | |
console.log(`Hello, ${name}!`); | |
} |
-
扩展运算符:
- 用于展开数组或对象的元素。
javascript复制代码
let arr1 = [1, 2, 3]; | |
let arr2 = [...arr1, 4, 5]; // [1, 2, 3, 4, 5] |
-
箭头函数:
- 更简洁的函数语法,不绑定自己的
this
,可以方便地访问外部作用域的this
。
- 更简洁的函数语法,不绑定自己的
javascript复制代码
let add = (a, b) => a + b; |
-
Promise:
- 用于处理异步操作,通过
.then()
和.catch()
方法链式处理异步结果。
- 用于处理异步操作,通过
javascript复制代码
let promise = new Promise((resolve, reject) => { | |
// 模拟异步操作 | |
setTimeout(() => { | |
resolve('Success!'); | |
}, 1000); | |
}); | |
promise.then(result => { | |
console.log(result); // 'Success!' | |
}).catch(error => { | |
console.error(error); | |
}); |
这些只是ECMAScript的一部分语法,实际上还有很多其他特性和语法结构可以用于构建复杂和高效的JavaScript应用。随着Web技术的不断发展,ECMAScript也在不断演进,为开发者提供更多功能和更好的性能。