久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      es6是不是框架

      es6不是框架,而是一種JavaScript語(yǔ)言的標(biāo)準(zhǔn)。es6是ECMAScript的第6版,是一種由Ecma國(guó)際(國(guó)際性會(huì)員制度的信息和電信標(biāo)準(zhǔn)組織)通過(guò)ECMA-262標(biāo)準(zhǔn)化的腳本程序設(shè)計(jì)語(yǔ)言;它是腳本語(yǔ)言JavaScript的核心,提供語(yǔ)言的語(yǔ)法和基本對(duì)象。

      es6是不是框架

      前端(vue)入門(mén)到精通課程:進(jìn)入學(xué)習(xí)
      Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調(diào)試工具:點(diǎn)擊使用

      本教程操作環(huán)境:windows7系統(tǒng)、ECMAScript 6版、Dell G3電腦。

      es6不是框架,而是一種JavaScript語(yǔ)言的標(biāo)準(zhǔn)。

      es6全稱(chēng)ECMAScript6(ECMAScript的第6個(gè)版本),是于2015年6月正式發(fā)布的JavaScript語(yǔ)言的標(biāo)準(zhǔn),正式名為ECMAScript 2015(ES2015)。它的目標(biāo)是使得JavaScript語(yǔ)言可以用來(lái)編寫(xiě)復(fù)雜的大型應(yīng)用程序,成為企業(yè)級(jí)開(kāi)發(fā)語(yǔ)言。

      ECMAScript是一種由Ecma國(guó)際通過(guò)ECMA-262標(biāo)準(zhǔn)化的腳本程序設(shè)計(jì)語(yǔ)言。這種語(yǔ)言在萬(wàn)維網(wǎng)上應(yīng)用廣泛,它往往被稱(chēng)為JavaScript或JScript,所以它可以理解為是JavaScript的一個(gè)標(biāo)準(zhǔn),但實(shí)際上后兩者是ECMA-262標(biāo)準(zhǔn)的實(shí)現(xiàn)和擴(kuò)展。

      JavaScript 與 ECMAScript 的關(guān)系

      有時(shí)人們會(huì)將 JavaScript 與 ECMAScript 看作是相同的,其實(shí)不然,JavaScript 中所包含的內(nèi)容遠(yuǎn)比 ECMA-262 中規(guī)定的多得多,完整的 JavaScript 是由以下三個(gè)部分組成:

      • 核心(ECMAScript):提供語(yǔ)言的語(yǔ)法和基本對(duì)象;

      • 文檔對(duì)象模型(DOM):提供處理網(wǎng)頁(yè)內(nèi)容的方法和接口;

      • 瀏覽器對(duì)象模型(BOM):提供與瀏覽器進(jìn)行交互的方法和接口。

      而ECMAScript是JavaScript的核心,描述了語(yǔ)言的基本語(yǔ)法(var、for、if、array等)和數(shù)據(jù)類(lèi)型(數(shù)字、字符串、布爾、函數(shù)、對(duì)象(obj、[]、{})、null、未定義),ECMAScript是一套標(biāo)準(zhǔn),定義了一種語(yǔ)言(比如JS)是什么樣子。

      ECMAScript是由ECMA-262定義的ECMAScript是一種在國(guó)際認(rèn)可的標(biāo)準(zhǔn)的腳本語(yǔ)言規(guī)范,與Web瀏覽器沒(méi)有依賴(lài)關(guān)系。ECMA-262標(biāo)準(zhǔn)主要規(guī)定了這門(mén)語(yǔ)言由以下組成部分:

      • 語(yǔ)法

      • 變量和數(shù)據(jù)類(lèi)型

      • 關(guān)鍵字和保留字

      • 操作符

      • 控制語(yǔ)句

      • 對(duì)象

      ECMAScript 6 目前基本成為業(yè)界標(biāo)準(zhǔn),它的普及速度比 ES5 要快很多,主要原因是現(xiàn)代瀏覽器對(duì) ES6 的支持相當(dāng)迅速,尤其是 Chrome 和 Firefox 瀏覽器,已經(jīng)支持 ES6 中絕大多數(shù)的特性。【推薦學(xué)習(xí):javascript高級(jí)教程】

      為什么要學(xué)ES6?ES6的用處是什么?

      ES5不能滿(mǎn)足目前前端越來(lái)越復(fù)雜,龐大的現(xiàn)狀,可以說(shuō)已經(jīng)過(guò)時(shí)了,ES6是對(duì)ES5的增強(qiáng)和升級(jí)。

      1.主流的瀏覽器都已經(jīng)全面支持ES6

      2.行業(yè)內(nèi)較新的前端框架都已經(jīng)全面使用ES6的語(yǔ)法

      3.微信小程序,uni-app等都是基于ES6的語(yǔ)法

      4.從就業(yè)出發(fā),中小型公司,全棧,簡(jiǎn)歷上多一個(gè)技能,試用期也能更快的上手。

      變量

      • let
        一個(gè)作用域中只能聲明一個(gè)let變量,若子作用域中也聲明了let變量,則不影響父作用域中的let變量。
      • var
        一個(gè)作用域中可以聲明多個(gè)var變量,若子作用域中也聲明了var變量,也在影響父作用域中的var變量。
      • const
        常量,相當(dāng)于final,不可被修改。
      • global
        不聲明變量類(lèi)型的變量默認(rèn)為全局變量(window屬性)。

      面向?qū)ο?/span>

      • 原理
        JavaScript 的面向?qū)ο筇匦允腔谠秃蜆?gòu)造函數(shù)的,與常見(jiàn)的基于類(lèi)的不同。JavaScript 沒(méi)有 提供對(duì)象繼承的語(yǔ)言級(jí)別特性,而是通過(guò)原型復(fù)制來(lái)實(shí)現(xiàn)的。
      • 三種創(chuàng)建對(duì)象方法

        1. {pojo}(實(shí)例變量、實(shí)例方法、get、set)    2. function(實(shí)例變量、實(shí)例方法、prototype、apply、call)    3. class(實(shí)例變量、實(shí)例方法、prototype、extends、super)
      登錄后復(fù)制

      prototype

      只有函數(shù)、class才有原型,意義在于動(dòng)態(tài)添加實(shí)例變量和實(shí)例方法及實(shí)現(xiàn)繼承。

      繼承

      • call/apply
        應(yīng)用在繼承關(guān)系中,子類(lèi)向父類(lèi)傳參時(shí)應(yīng)用此關(guān)鍵字
      • extends
        繼承關(guān)系中使用,A extends B,則A是B的父類(lèi)
      • super
        在子類(lèi)中調(diào)用父類(lèi)的方法時(shí)應(yīng)用次關(guān)鍵字
      • ES5繼承方式
        接下來(lái)我們手寫(xiě)一套組合繼承(原型鏈繼承(繼承原型) + 構(gòu)造繼承(繼承屬性))。這種方式即可避免原型鏈繼承中無(wú)法實(shí)現(xiàn)多繼承,創(chuàng)建子類(lèi)實(shí)例時(shí),無(wú)法向父類(lèi)構(gòu)造函數(shù)傳參的弊端,也可避免構(gòu)造繼承中不能繼承原型屬性/方法的弊端。

      function Person(name,age){                                             /* 父類(lèi) */     this.name = name || 'father';                            //實(shí)例變量     this.namesonF = this.nameson;     this.age = age;     this.talk = function(){alert("talk");};                 //實(shí)例方法 }; function Son(name){                                                     /* 子類(lèi) */     this.nameson = name || 'son';     // Person.call(this,'name',18);                          //繼承:構(gòu)造繼承,復(fù)制父類(lèi)的實(shí)例屬性給子類(lèi),不能繼承原型屬性/方法     Person.apply(this,['name',18]);                          //繼承:構(gòu)造繼承,復(fù)制父類(lèi)的實(shí)例屬性給子類(lèi),不能繼承原型屬性/方法 } // Son.prototype = new Person("zhangsan",19);                   //繼承:原型鏈繼承,父類(lèi)的實(shí)例作為子類(lèi)的原型,拷貝屬性?xún)纱?,不合?Son.prototype = Person.prototype;                            //繼承:原型鏈繼承,父類(lèi)的實(shí)例作為子類(lèi)的原型  Person.prototype.publicParam="param1";                       //動(dòng)態(tài)添加實(shí)例變量 Person.prototype.talk=function(){alert("talk");}            //動(dòng)態(tài)添加實(shí)例方法  var son = new Son();                                         //實(shí)例化對(duì)象,調(diào)用構(gòu)造函數(shù)(constructor)
      登錄后復(fù)制

      • ES6繼承方式
        ES6的繼承創(chuàng)造了一種新的寫(xiě)法,與Java、Scala等語(yǔ)言非常類(lèi)似,默認(rèn)使用組合繼承(原型鏈繼承(繼承原型) + 構(gòu)造繼承(繼承屬性))的方式。

      class Point {     constructor(x, y) {         this.x = x;                                           //實(shí)例變量         this.y = y;     } } class Son extends Point {     constructor(z, w) {         super(z,w);         this.z = z;                                           //實(shí)例變量         this.w = w;     } } var son = new Son(1,2);
      登錄后復(fù)制

      arrow functions

      箭頭函數(shù),是ES6中新加入的語(yǔ)法,于Java的lambda,scala的函數(shù)式語(yǔ)法非常相似

      • 代碼

      var single = a => console.log(a); var single = (a) => (console.log(a)); var single = (a, b) => {console.log(a + b)}; var single = (a, b) => {return a + b};
      登錄后復(fù)制

      template string

      模版字符串,字符串拼接的新語(yǔ)法

      • 代碼

      var templateStr = () => {     var str1 = "adsfnsdfa";      var template1 = `<ul><li>first</li> <li>second</li></ul>`;      var x = 1;     var y = 2;     var template2 = `${x} + ${y} = ${x + y}`;      var template3 = `${lettest4()}`;     console.log(str1)     console.log(template1)     console.log(template2)     console.log(template3) }
      登錄后復(fù)制

      destructuring

      重構(gòu)/解構(gòu),變量交互的語(yǔ)法

      • 代碼

      var destructuring = () => {     var [a,b,...c]=[1,2,3,4,5,6,7,8,9,10];     let [temp="replaceString"] = ["tempString"];     let [age2, [{name: fname},{age: fname2="replaceString"}]] = [20, [{name: 'qc'},{}]];     const [aa,bb,cc,dd,ee,ff]="hello";      let {name="replaceName",age,id}={name:'cursor',age:19,id:'vc6dfuoc91vpdfoi87s'};     let {type:tipType,min:minNumber}={type:'message',min:20};     let {sin,cos,tan,log}=Math;      var fun = function({x,y}={}){return [x,y];}     fun({x:100,y:2});      [a,b]=[b,a];                                        //交換      var map = [1,2,3]     var map=new Map();     map.set("id","007");     map.set("name","cursor");     for(let [key,value] of map){}     for(let [key] of map){}     for(let [,value] of map){}      var arr = [1,2,3,4]     for(let val of arr){val}  }
      登錄后復(fù)制

      arguments

      實(shí)參,ES6中加入的直接讀取參數(shù)的變量

      • 代碼

      function argumentsTest(a,b) {  	for(let val of arguments) 		{console.log(val) 	} }
      登錄后復(fù)制

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)