ES6中的箭头函数与普通函数有何区别?
- 内容介绍
- 文章标签
- 相关推荐
本文共计4032个文字,预计阅读时间需要17分钟。
收集的较为完整的ES6的一些面试题,包括较为详细的讲解和代码示例,能更好地帮助你理解。
let、const、var的区别
let 和 const 都是ES6引入的块级作用域(block scope)变量声明方式,而 var 是ES5及以前的标准。
- let:用于声明变量,其作用域是块级(花括号 `{}` 内),可以重新赋值。- const:用于声明常量,其作用域也是块级,一旦声明,其值不能被重新赋值。
var:
- 作用域:函数级或全局级。- 可以重新赋值。
示例:
javascript{ let a=10; const b=20; var c=30;
console.log(a); // 10 console.log(b); // 20 console.log(c); // 30
a=20; // 可重新赋值 // b=30; // 错误,const声明的变量不可重新赋值 c=40; // 可重新赋值}
变量提升
变量提升(hoisting)是JavaScript的一个特性,它会在函数或代码块执行之前,将变量声明提升到函数或代码块的顶部。
- var 声明的变量会被提升,但不会初始化。- let 和 const 声明的变量也会被提升,但不会初始化,并且不能在声明之前使用。
示例:
javascriptconsole.log(a); // undefinedvar a=10;
console.log(b); // 报错,因为let和const声明的变量不会初始化let b=20;
总结
- let 和 const 提供了块级作用域,而 var 提供了函数级或全局级作用域。
本文共计4032个文字,预计阅读时间需要17分钟。
收集的较为完整的ES6的一些面试题,包括较为详细的讲解和代码示例,能更好地帮助你理解。
let、const、var的区别
let 和 const 都是ES6引入的块级作用域(block scope)变量声明方式,而 var 是ES5及以前的标准。
- let:用于声明变量,其作用域是块级(花括号 `{}` 内),可以重新赋值。- const:用于声明常量,其作用域也是块级,一旦声明,其值不能被重新赋值。
var:
- 作用域:函数级或全局级。- 可以重新赋值。
示例:
javascript{ let a=10; const b=20; var c=30;
console.log(a); // 10 console.log(b); // 20 console.log(c); // 30
a=20; // 可重新赋值 // b=30; // 错误,const声明的变量不可重新赋值 c=40; // 可重新赋值}
变量提升
变量提升(hoisting)是JavaScript的一个特性,它会在函数或代码块执行之前,将变量声明提升到函数或代码块的顶部。
- var 声明的变量会被提升,但不会初始化。- let 和 const 声明的变量也会被提升,但不会初始化,并且不能在声明之前使用。
示例:
javascriptconsole.log(a); // undefinedvar a=10;
console.log(b); // 报错,因为let和const声明的变量不会初始化let b=20;
总结
- let 和 const 提供了块级作用域,而 var 提供了函数级或全局级作用域。

