国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

ES6語法特性 - ES6 - ECMAScript特性 - Javascript核心

jas0n / 1936人閱讀

摘要:前三個是為了解決變量聲明定義的問題,而最后一個則影響最大。下文只介紹前三個特性。這是因為的的不支持塊級作用域,變量僅僅被限制到函數作用域內。

  

原文: http://pij.robinqu.me/JavaScript_Core/ECMAScript/es6/es6_syntax_features.html

  

源代碼: https://github.com/RobinQu/Programing-In-Javascript/blob/master/chapters/JavaScript_Core/ECMAScript/es6/es6_syntax_features.md

本文需要[補充][1]更多例子

本文存在批注,但該網站的Markdown編輯器不支持,所以無法正常展示,請到原文參考。

ES6語法特性

ES6包含了很多萬眾期待的特性支持:

arrow functions

const

let

default function params

rest parameters

call(...)

array(...)

class

computed properties

modules

for...of

Array comprehensions

Generator comprehensions

Iterators

yield

Template Strings

block-level declaration

destructing

promoise

里面眾多的特性都是讓Javascript看起來更規范的好東西,但是大部分都沒有被廣泛支持。我們僅介紹其中已經至少被一種瀏覽器和node --harmony下支持的。

在寫這篇文章的時候,有如下特性是較為廣泛支持的:

let1

const2

Block-delvel declaration

for-of

yield

對,就這么多了。前三個是為了解決變量聲明、定義的問題,而最后一個則影響最大。會在多帶帶篇幅中介紹。下文只介紹前三個特性。

let和block-level declaration

var is scoped to the nearest function block (or global if outside a function block)

let is scoped to the nearest enclosing block (or global if outside any block),

很多文獻、書籍都建議將for循環的起始變量ilen等放置到函數作用于的頂部聲明,以避免后續變量持續存在所造成的迷惑。

function() {
    for(var i=0,len=5;i 5,5
}

這是因為ES5的Javascript的不支持塊級作用域,變量僅僅被限制到函數作用域內。

注意在node中,你需要同時加入--harmony--use-strict來啟動,才會支持let。否則會報錯: SyntaxError: Illegal let declaration outside extended mode

在ES6內,可以通過let來定義塊級作用域的變量:

function() {
    for(let i=0,len=5;i

最后一個,函數定義的作用域問題:

function f() { console.log("I am outside!"); }
(function () {
  if(false) {
    // What should happen with this redeclaration?
    function f() { console.log("I am inside!"); }
  }

  f();
}());

如上代碼,在ES5時代,每個瀏覽器都會得出不同的結果。但是ES6中,函數定義只在塊級作用域內有效,結果很明確。

const關鍵字

const關鍵字定義一個塊級作用域的常量變量。

const a = "You shall remain constant!";

// SyntaxError: Assignment to constant variable
a = "I wanna be free!";
yield

yield后面有一連串有關Generator和Iterator的內容,會在另外一片文章內詳細介紹: Javascript Generator。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let??

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const??

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/78135.html

相關文章

  • ES6語法特性 - ES6 - ECMAScript特性 - Javascript核心

    摘要:前三個是為了解決變量聲明定義的問題,而最后一個則影響最大。下文只介紹前三個特性。這是因為的的不支持塊級作用域,變量僅僅被限制到函數作用域內。 原文: http://pij.robinqu.me/JavaScript_Core/ECMAScript/es6/es6_syntax_features.html 源代碼: https://github.com/RobinQu/P...

    Joyven 評論0 收藏0
  • ES6語法特性 - ES6 - ECMAScript特性 - Javascript核心

    摘要:前三個是為了解決變量聲明定義的問題,而最后一個則影響最大。下文只介紹前三個特性。這是因為的的不支持塊級作用域,變量僅僅被限制到函數作用域內。 原文: http://pij.robinqu.me/JavaScript_Core/ECMAScript/es6/es6_syntax_features.html 源代碼: https://github.com/RobinQu/P...

    StonePanda 評論0 收藏0
  • ES6特性概述 - ES6 - ECMAScript特性 - Javascript核心

    摘要:特性概述比較新特性更多。之后后分篇描述目前已經比較成熟的語法特性例如和。同上,但返回該元素的索引號。和對象的屬性行為一致。不將參數強制轉行為。判斷是否為在范圍內的正整數。不少層面的特性可以通過進行兼容性支持。 原文: http://pij.robinqu.me/JavaScript_Core/ECMAScript/es6/es6_api_extension.html 源...

    Ali_ 評論0 收藏0
  • ES6-前世今生(0)

    摘要:更新了個版本,最新正式版是語言的下一代標準,早已在年月正式發布。基本不支持移動端瀏覽器對的支持情況版起便可以支持的新特性。比較通用的工具方案有,,,等。 1、ECMAScript是什么? 和 JavaScript 有著怎樣的關系? 1996 年 11 月,Netscape 創造了javascript并將其提交給了標準化組織 ECMA,次年,ECMA 發布 262 號標準文件(ECMA-...

    LeviDing 評論0 收藏0
  • ES6-7

    摘要:的翻譯文檔由的維護很多人說,阮老師已經有一本關于的書了入門,覺得看看這本書就足夠了。前端的異步解決方案之和異步編程模式在前端開發過程中,顯得越來越重要。為了讓編程更美好,我們就需要引入來降低異步編程的復雜性。 JavaScript Promise 迷你書(中文版) 超詳細介紹promise的gitbook,看完再不會promise...... 本書的目的是以目前還在制定中的ECMASc...

    mudiyouyou 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<