新增宣告方法:1、let,用於宣告變量,語法「let 變數名稱=值」;2、const,用於宣告常數,語法「const 常數名稱=值」;3、class ,用於宣告類,語法「class 類別名稱{...}」;4、import,用於宣告靜態載入的輸入變數。
本文操作環境:windows10系統、Vue2.9.6版,DELL G3電腦。
宣告變數在ES5之前有兩種:第一種是宣告變數和常數的 「 var 」。第二種是宣告函數的 “ function ”。在ES6中,宣告變數的方法一下子擴充了到了6 種,總結如下:
宣告變數或常數:var 、let(ES6新增)、const (ES6新增);
宣告函數變數:function ;
宣告功能變數:function ;
宣告類別:class(ES6新增);
宣告 ' 靜態載入' 輸入變數:
宣告』 靜態載入' 輸入變數::##ES6 新增);在我們學習這幾個新增的方法之前,還需要知道幾個ES6新定義的概念:
#1,let和const定義:
let: ES6 新增了let指令,用來宣告變數。它的用法類似var,但是所宣告的變量,只在let指令所在的區塊級作用域內有效。
const:ES6新增了const指令,宣告一個唯讀的常數。一旦聲明,常量的值就不能改變。同let一樣宣告的變數只在區塊級作用域內有效;
特點差異:
相同:都不存在變數提升,所以只能宣告後使用,不宣告使用會報錯;
都有暫時性死區(TDZ),這也解釋了為何不宣告變數使用會錯誤;
#o const宣告的變數是「不可改變」 的變量,所以在宣告變數時必須直接賦值,常數賦值後不能改變值,否則報錯;注意:上邊我們說的const宣告的變數不可改變是針對“常數” 我理解是“ 基本資料類型”,例如字串,數值,布林值等等。並不是指的所有資料類型,當我們用const宣告的變數是引用資料型別時,是可以改變值的。 這裡就說到了const保存的內容的真正意義:const實際上保證的,並不是變數的值不得改動,而是變數指向的那個記憶體位址所保存的資料不得改動。對於簡單類型的資料(數值、字串、布林值),值就保存在變數指向的那個記憶體位址,因此等同於常數。 但對於複合型別的資料(主要是物件和陣列),變數指向的記憶體位址,保存的只是一個指向實際資料的指針,const只能保證這個指標是固定的(即總是指向另一個固定的位址),至於它所指向的資料結構是不是可變的,就完全不能控制了。因此,將一個物件聲明為常數必須非常小心。 用法:// let 用法 let a = '123'; // const 用法 const b = '456'
2,class
定義:ES6 的class可以看成只是一個語法糖,它的絕大部分功能, ES5 都可以做到,新的class寫法只是讓物件原型的寫法更清晰、更像物件導向程式設計的語法而已。 (class定義類,其實是很重要的一個知識,這裡只是簡單的學習一下它的最最基本的用法,也是作為一個引子。深入的學習我們會在後續記錄)用法:// 基本方法定义一个类 class Point{ constructor(x,y){ this.x = x; this.y = y; } toString(){ return '( '+ this.x +','+ this.y +')'; } } var point = new Point(2,3) point.toString(); // (2,3) // 表达式的方法定义一个类 let person = new class { constructor(name) { this.name = name; } sayName() { console.log(this.name); } }('张三'); person.sayName(); // "张三"
3,import
用法: 使用export指令定義了模組的對外介面以後,其他JS 文件就可以透過import指令載入這個模組。// main.js import { firstName, lastName, year } from './profile.js'; function setName(element) { element.textContent = firstName + ' ' + lastName; }上面程式碼的import指令,用於載入profile.js文件,並從中輸入變數。 import指令接受一對大括號,裡面指定要從其他模組匯入的變數名稱。大括號裡面的變數名,必須與被導入模組(profile.js)對外介面的名稱相同。如果想為輸入的變數重新取一個名字,import指令要使用as關鍵字,將輸入的變數重新命名。
import { lastName as surname } from './profile.js';【相關推薦:《
vue.js教學》】
以上是es6新增的聲明方法有什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!