es6與es5差別
1、es6新增了let
命令,用來宣告變數。它的用法類似於var
,但是所宣告的變數,只在let
命令所在的**塊內有效。
a;//1
b;//undefined
let不像var存在變數提公升,即變數一定要宣告之後才能使用。
2、塊級作用域
es5只有全域性作用域和函式作用域,沒有塊級作用域。
3、變數的解構賦值
var [a, b, c] = [1, 2, 3];
4、模板字串
模板字串(template string)是增強版的字串,用反引號(`)標識,它可以當作普通字串使用,也可以用來定義多行字串,或者在字串中嵌入變數。
$('#list').html(`
`);
上面**中,所有模板字串的空格和換行都是被保留的,比如`.trim());
模板字串中還能呼叫函式。
function fn()
`foo $ bar`
// foo hello world bar
5、函式引數的預設值
es5
function log(x, y)
log('hello') // hello world
log('hello', 'china') // hello china
log('hello', '') // hello world
es6function log(x, y = 'world')
log('hello') // hello world
log('hello', 'china') // hello china
log('hello', '') // hello歡迎交流~~。
es5繼承與es6繼承
es5中的繼承方式 1.原型鏈繼承 缺點 1.建立例項時無法像父類建構函式傳遞引數 2.因為指定了原型,所以不能實現多繼承 3.父類建構函式上的屬性被所有子類共用,給原型上的屬性賦值會改變其他子類的屬性值 es5 const parent function name,age parent.proto...
es5與es6的區別
es5和es6對於前端開發來說是經常都會使用的方法,他們為我們開發提供了很多便利的方法和寫法,使我們的 更加的優雅,作為乙個新人就讓我簡單總結一下es5與es6的不同。1.變數 首先在變數方面es6為我們提供了let和const這兩種新的宣告方法,let和const的出現大大的避免了變數汙染的問題,...
es6與es5的區別
es5只有兩種宣告變數的方法 var命令和function命令。es6除了新增let和const命令,後面章節還會提到,另外兩種宣告變數的方法 import命令和class命令。所以,es6一共有6種宣告變數的方法。頂層物件,在瀏覽器環境指的是window物件,在node指的是global物件。es...