• <sub id="h4knl"><ol id="h4knl"></ol></sub>
    <sup id="h4knl"></sup>
      <sub id="h4knl"></sub>

      <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
      1. <strong id="h4knl"></strong>

      2. javascript基礎(chǔ)知識(shí)

        時(shí)間:2024-08-22 20:40:54 JavaScript 我要投稿

        javascript基礎(chǔ)知識(shí)大全

          大多數(shù)人覺得學(xué)習(xí)JavaScript是一件容易的事情,其實(shí)也并沒有錯(cuò),js的確是一個(gè)容易上手的語言。這就導(dǎo)致很多人都會(huì)用JavaScript,但卻很少有人能用的很精通的原因,因?yàn)樗麄兇笮】磈s這門語言的基礎(chǔ)和內(nèi)在了,基礎(chǔ),無論何時(shí)都是一個(gè)重要的存在,最直接的就是在你面試的時(shí)候,如果連js的數(shù)據(jù)類型都答不上來那是不是就太過分了…… 接下來,就讓我們一起總結(jié)一下JavaScript的基礎(chǔ)。

        javascript基礎(chǔ)知識(shí)大全

          一、語法

          ------------------------------

          javascript中的一切(變量、函數(shù)名和操作符)都區(qū)分大小寫。

          標(biāo)識(shí)符:就是指變量、函數(shù)、屬性的名字,標(biāo)識(shí)符要求如下

          1 第一個(gè)字符必須是一個(gè)字母、下劃線(_)或一個(gè)美元符號(hào)($)

          2 其他字符可以是字母、下劃線、美元符號(hào)或數(shù)字

          3 不能把關(guān)鍵字、保留字、true、false、null用作標(biāo)識(shí)符

          注釋

          // 單行注釋

          /*

          *

          * 多行注釋

          *

          */

          嚴(yán)格模式

          嚴(yán)格模式是ES5引入的,嚴(yán)格模式定義一種不同的解析和執(zhí)行模式,在嚴(yán)格模式下,對(duì)某些不安全的操作會(huì)跑出錯(cuò)誤

          // 在整個(gè)腳本中啟用嚴(yán)格模式,可以在頂部添加如下代碼

          "use strict"

          // 也可以指定函數(shù)在嚴(yán)格模式下執(zhí)行

          function doSomething(){

          "use strict"

          // ....

          }

          二、變量和數(shù)據(jù)類型

          ------------------------------

          變量

          1、ESCMscript中的變量是松散類型的,即JavaScript使弱類型語言,換句話說js中的變量?jī)H僅是一個(gè)保存值得占位符而已,可以保存任何類型的值。

          2、定義變量用 var 操作符。

          3、使用var操作符定義的變量將成為定義該變量的作用域中的局部變量。

          4、在函數(shù)作用域(塊作用域)中可以通過省略var定義全局變量(不推薦)。

          數(shù)據(jù)類型

          1、js中有5中基本數(shù)據(jù)類型和1中復(fù)雜數(shù)據(jù)類型他們分別是

          Undefined、Null、Boolean、Number、String和Object

          2、typeof操作符用來檢測(cè)變量的數(shù)據(jù)類型,對(duì)一個(gè)值使用typeof操作符會(huì)返回字一個(gè) 字符串 ,標(biāo)示著該值得類型:

          “undefined” —- 如果這個(gè)值未定義

          “boolean” —- 如果這個(gè)值是布爾值

          “string” —- 如果這個(gè)值是字符串

          “number” —- 如果這個(gè)值是數(shù)值

          “object” —- 如果這個(gè)值是對(duì)象或null

          “function” —- 如果這個(gè)值是函數(shù)

          3、js的6中數(shù)據(jù)類型與使用typeof判斷出來的數(shù)據(jù)類型并不對(duì)應(yīng),區(qū)別就在于使用typeof得到的類型標(biāo)示中沒有”null”,而是多了一個(gè)”function”,其他的都是一樣的,還要注意的就是對(duì)null是用typeof時(shí)會(huì)返回”object”,并且typeof操作符得到的是字符串。

          三、語句

          ------------------------------

          if語句

          語法:

          if(條件){

          }else if(條件){

          }else{

          }

          解釋:

          其中,條件可以是任意表達(dá)式,而且對(duì)這個(gè)表達(dá)式的求值結(jié)果不一定非得是Boolean值,ES會(huì)自動(dòng)調(diào)用Boolean()轉(zhuǎn)換函數(shù)將這個(gè)表達(dá)式的結(jié)果轉(zhuǎn)換成一個(gè)布爾值。

          while語句

          語法:

          while(條件){

          something...

          }

          解釋:

          其中條件同if語句中的條件,while語句是前測(cè)試循環(huán)語句,即在執(zhí)行循環(huán)體之前就要對(duì)條件表達(dá)式求值,所以循環(huán)體有可能永遠(yuǎn)不會(huì)執(zhí)行。

          do-while語句

          語法:

          do{

          something...

          }while(條件)

          解釋:

          其中條件同if語句中的條件,do-while語句是后測(cè)試循環(huán)語句,即在對(duì)條件表達(dá)式求值之前,循環(huán)體中的代碼至少被執(zhí)行一次。有趣的記法就是(while是先問再揍,do-while是揍完再問)。

          for語句

          語法:

          for(初始化代碼, 條件, 執(zhí)行循環(huán)體后要執(zhí)行的代碼){

          something...

          }

          解釋:

          for語句也是一種前測(cè)試循環(huán)語句,所以循環(huán)體也有可能永遠(yuǎn)不會(huì)執(zhí)行,for語句和while語句的區(qū)別就是,在執(zhí)行循環(huán)之前初始化變量和定義循環(huán)后要執(zhí)行的代碼的能力。

          for-in語句

          語法:

          for(property in expression){

          something...

          }

          解釋:

          for-in語句是一種精準(zhǔn)的迭代語句,用來枚舉對(duì)象的屬性,需要注意的是,for-in語句輸出的屬性名的順序是不可測(cè)的,因?yàn)g覽器而異。

          switch語句

          語法:

          switch(表達(dá)式){

          case value :

          statement

          break;

          case value :

          statement

          break;

          case value :

          statement

          break;

          default :

          statement

          }

          解釋:

          switch語句是與if語句最密切的流程控制語句,JavaScript中的switch語句有很多自己的特色,首先:可以在switch語句中使用任何數(shù)據(jù)類型,其次:每個(gè)case的值(即value),不僅僅只能是常量,也可以是變量甚至表達(dá)式。

          label語句

          語法:

          label : statement

          // 實(shí)例

          start : for(var i = 0; i < count; i++){

          alert(i)

          }

          解釋:

          使用label語句可以在代碼中添加標(biāo)簽,以便將來使用,上面例子中的start標(biāo)簽可以在將來由break或continue語句引用,使代碼跳至標(biāo)簽開始出執(zhí)行,一般label語句都要與for語句等循環(huán)語句中的break或continue配合只用。

          break和continue語句

          語法:

          // 例子

          mylabel :

          for(var i = 0; i < 10; i++){

          for(var j = 0; j < 10; j++){

          if(i == 5 && j == 5){

          break mylabel;

          // continue mylabel;

          }

          }

          }

          解釋:

          break和continue語句都是用來跳出循環(huán)的語句,不同之處在于break語句會(huì)強(qiáng)制執(zhí)行后面的語句,而continue語句只是跳出本次循環(huán)繼續(xù)執(zhí)行下次循環(huán)。上面的例子中,結(jié)合使用break語句和label語句,控制代碼的執(zhí)行。

          with語句

          解釋:

          with語句的作用是將代碼的作用域設(shè)置到特定的對(duì)象中。嚴(yán)格模式下使用with語句會(huì)報(bào)錯(cuò)。定義with語句的目的是簡(jiǎn)化同一個(gè)對(duì)象的多次編寫問題,如下例:

          var qs = location.search.substring(1);

          var hostName location.hostname;

          var url = location.href;

          // 上面的代碼中都包含location對(duì)象,使用with語句可以將代碼簡(jiǎn)化如下

          with(location){

          var qs = search.substring(1);

          var hostName = hostname;

          var url = href;

          }

          四、函數(shù)

          ------------------------------

          JavaScript中的函數(shù)使用function關(guān)鍵字來聲明

          function(arg0, arg1, arg2, ..., argn){

          statements

          }

          理解參數(shù)

          JavaScript中的參數(shù)有一下特點(diǎn):

          不介意你傳遞幾個(gè)參數(shù),即使你在定義函數(shù)時(shí)規(guī)定了接收幾個(gè)參數(shù),它都不會(huì)報(bào)錯(cuò)。

          不在乎你傳遞的參數(shù)是什么數(shù)據(jù)類型。

          之所以會(huì)這樣,是因?yàn)镴avaScript函數(shù)內(nèi)部的參數(shù)使用一個(gè)類數(shù)組對(duì)象來表示的,所以函數(shù)接收到的始終都是這個(gè)類數(shù)組對(duì)象,而不關(guān)心這個(gè)對(duì)象里面有什么參數(shù),在函數(shù)體內(nèi)可以是用arguments對(duì)象來訪問這個(gè)類數(shù)組對(duì)象,可以使用方括號(hào)的語法如:arguments[0]、arguments[1]等,這個(gè)事實(shí)說明一個(gè)重要的特點(diǎn):

          命名參數(shù)并不是必須的,它只是提供了便利而已。

          通過arguments的length屬性獲知有多少個(gè)參數(shù)傳遞給了函數(shù):

          function howManyArgs(){

          alert(arguments.length);

          }

          howManyArgs("string", 1); // 2

          howManyArgs();   // 0

          howManyArgs(1);   // 1

          關(guān)于arguments有一點(diǎn)比較有意思,就是它的值永遠(yuǎn)與對(duì)應(yīng)的形式參數(shù)同步,即修改了arguments[0]的值會(huì)使對(duì)應(yīng)的命名參數(shù)的值也發(fā)生相應(yīng)的改變。但是這并不是說他們?cè)L問的是相同的內(nèi)存空間,他們有獨(dú)立的存儲(chǔ)空間,只不過值會(huì)同步而已,另外如果值傳遞一個(gè)參數(shù),修改arguments[1]的值是不會(huì)改變對(duì)應(yīng)的命名參數(shù)的值的,這是應(yīng)為,arguments.length的長(zhǎng)度是由傳遞參數(shù)個(gè)數(shù)決定的,而不是命名參數(shù)的個(gè)數(shù)決定的,在這里再次強(qiáng)調(diào)一次, 命名參數(shù)只是提供了便利而已,沒有任何其他作用 。

          沒有重載

          由于JavaScript中的函數(shù)沒有函數(shù)簽名的特征,所以沒有重載,不過可以通過檢查傳入函數(shù)的參數(shù)的類型和數(shù)量作出不同的反應(yīng)來模擬重載。

        《&.doc》
        将本文的Word文档下载到电脑,方便收藏和打印
        推荐度:
        点击下载文档

        【javascript基礎(chǔ)知識(shí)】相關(guān)文章:

        關(guān)于javascript的基礎(chǔ)知識(shí)04-01

        對(duì)javascript的理解03-29

        JavaScript的課堂講解03-31

        JavaScript 基礎(chǔ)教學(xué)04-01

        JavaScript學(xué)習(xí)筆記03-30

        常用的JavaScript模式03-10

        Javascript的this用法簡(jiǎn)述03-25

        JavaScript常用方法匯總03-08

        高效編寫JavaScript代碼的技巧03-10

        在线咨询
        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码
      3. <sub id="h4knl"><ol id="h4knl"></ol></sub>
        <sup id="h4knl"></sup>
          <sub id="h4knl"></sub>

          <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
          1. <strong id="h4knl"></strong>

          2. 中文亚洲国产片在线观看 | 一本色道久久综合亚洲精品不卡 | 亚洲免费图区在线视频 | 亚洲无线码一区二区三区 | 日韩乱码中文字幕视频 | 日本中文字幕乱码视频在线 |

            javascript基礎(chǔ)知識(shí)大全

              大多數(shù)人覺得學(xué)習(xí)JavaScript是一件容易的事情,其實(shí)也并沒有錯(cuò),js的確是一個(gè)容易上手的語言。這就導(dǎo)致很多人都會(huì)用JavaScript,但卻很少有人能用的很精通的原因,因?yàn)樗麄兇笮】磈s這門語言的基礎(chǔ)和內(nèi)在了,基礎(chǔ),無論何時(shí)都是一個(gè)重要的存在,最直接的就是在你面試的時(shí)候,如果連js的數(shù)據(jù)類型都答不上來那是不是就太過分了…… 接下來,就讓我們一起總結(jié)一下JavaScript的基礎(chǔ)。

            javascript基礎(chǔ)知識(shí)大全

              一、語法

              ------------------------------

              javascript中的一切(變量、函數(shù)名和操作符)都區(qū)分大小寫。

              標(biāo)識(shí)符:就是指變量、函數(shù)、屬性的名字,標(biāo)識(shí)符要求如下

              1 第一個(gè)字符必須是一個(gè)字母、下劃線(_)或一個(gè)美元符號(hào)($)

              2 其他字符可以是字母、下劃線、美元符號(hào)或數(shù)字

              3 不能把關(guān)鍵字、保留字、true、false、null用作標(biāo)識(shí)符

              注釋

              // 單行注釋

              /*

              *

              * 多行注釋

              *

              */

              嚴(yán)格模式

              嚴(yán)格模式是ES5引入的,嚴(yán)格模式定義一種不同的解析和執(zhí)行模式,在嚴(yán)格模式下,對(duì)某些不安全的操作會(huì)跑出錯(cuò)誤

              // 在整個(gè)腳本中啟用嚴(yán)格模式,可以在頂部添加如下代碼

              "use strict"

              // 也可以指定函數(shù)在嚴(yán)格模式下執(zhí)行

              function doSomething(){

              "use strict"

              // ....

              }

              二、變量和數(shù)據(jù)類型

              ------------------------------

              變量

              1、ESCMscript中的變量是松散類型的,即JavaScript使弱類型語言,換句話說js中的變量?jī)H僅是一個(gè)保存值得占位符而已,可以保存任何類型的值。

              2、定義變量用 var 操作符。

              3、使用var操作符定義的變量將成為定義該變量的作用域中的局部變量。

              4、在函數(shù)作用域(塊作用域)中可以通過省略var定義全局變量(不推薦)。

              數(shù)據(jù)類型

              1、js中有5中基本數(shù)據(jù)類型和1中復(fù)雜數(shù)據(jù)類型他們分別是

              Undefined、Null、Boolean、Number、String和Object

              2、typeof操作符用來檢測(cè)變量的數(shù)據(jù)類型,對(duì)一個(gè)值使用typeof操作符會(huì)返回字一個(gè) 字符串 ,標(biāo)示著該值得類型:

              “undefined” —- 如果這個(gè)值未定義

              “boolean” —- 如果這個(gè)值是布爾值

              “string” —- 如果這個(gè)值是字符串

              “number” —- 如果這個(gè)值是數(shù)值

              “object” —- 如果這個(gè)值是對(duì)象或null

              “function” —- 如果這個(gè)值是函數(shù)

              3、js的6中數(shù)據(jù)類型與使用typeof判斷出來的數(shù)據(jù)類型并不對(duì)應(yīng),區(qū)別就在于使用typeof得到的類型標(biāo)示中沒有”null”,而是多了一個(gè)”function”,其他的都是一樣的,還要注意的就是對(duì)null是用typeof時(shí)會(huì)返回”object”,并且typeof操作符得到的是字符串。

              三、語句

              ------------------------------

              if語句

              語法:

              if(條件){

              }else if(條件){

              }else{

              }

              解釋:

              其中,條件可以是任意表達(dá)式,而且對(duì)這個(gè)表達(dá)式的求值結(jié)果不一定非得是Boolean值,ES會(huì)自動(dòng)調(diào)用Boolean()轉(zhuǎn)換函數(shù)將這個(gè)表達(dá)式的結(jié)果轉(zhuǎn)換成一個(gè)布爾值。

              while語句

              語法:

              while(條件){

              something...

              }

              解釋:

              其中條件同if語句中的條件,while語句是前測(cè)試循環(huán)語句,即在執(zhí)行循環(huán)體之前就要對(duì)條件表達(dá)式求值,所以循環(huán)體有可能永遠(yuǎn)不會(huì)執(zhí)行。

              do-while語句

              語法:

              do{

              something...

              }while(條件)

              解釋:

              其中條件同if語句中的條件,do-while語句是后測(cè)試循環(huán)語句,即在對(duì)條件表達(dá)式求值之前,循環(huán)體中的代碼至少被執(zhí)行一次。有趣的記法就是(while是先問再揍,do-while是揍完再問)。

              for語句

              語法:

              for(初始化代碼, 條件, 執(zhí)行循環(huán)體后要執(zhí)行的代碼){

              something...

              }

              解釋:

              for語句也是一種前測(cè)試循環(huán)語句,所以循環(huán)體也有可能永遠(yuǎn)不會(huì)執(zhí)行,for語句和while語句的區(qū)別就是,在執(zhí)行循環(huán)之前初始化變量和定義循環(huán)后要執(zhí)行的代碼的能力。

              for-in語句

              語法:

              for(property in expression){

              something...

              }

              解釋:

              for-in語句是一種精準(zhǔn)的迭代語句,用來枚舉對(duì)象的屬性,需要注意的是,for-in語句輸出的屬性名的順序是不可測(cè)的,因?yàn)g覽器而異。

              switch語句

              語法:

              switch(表達(dá)式){

              case value :

              statement

              break;

              case value :

              statement

              break;

              case value :

              statement

              break;

              default :

              statement

              }

              解釋:

              switch語句是與if語句最密切的流程控制語句,JavaScript中的switch語句有很多自己的特色,首先:可以在switch語句中使用任何數(shù)據(jù)類型,其次:每個(gè)case的值(即value),不僅僅只能是常量,也可以是變量甚至表達(dá)式。

              label語句

              語法:

              label : statement

              // 實(shí)例

              start : for(var i = 0; i < count; i++){

              alert(i)

              }

              解釋:

              使用label語句可以在代碼中添加標(biāo)簽,以便將來使用,上面例子中的start標(biāo)簽可以在將來由break或continue語句引用,使代碼跳至標(biāo)簽開始出執(zhí)行,一般label語句都要與for語句等循環(huán)語句中的break或continue配合只用。

              break和continue語句

              語法:

              // 例子

              mylabel :

              for(var i = 0; i < 10; i++){

              for(var j = 0; j < 10; j++){

              if(i == 5 && j == 5){

              break mylabel;

              // continue mylabel;

              }

              }

              }

              解釋:

              break和continue語句都是用來跳出循環(huán)的語句,不同之處在于break語句會(huì)強(qiáng)制執(zhí)行后面的語句,而continue語句只是跳出本次循環(huán)繼續(xù)執(zhí)行下次循環(huán)。上面的例子中,結(jié)合使用break語句和label語句,控制代碼的執(zhí)行。

              with語句

              解釋:

              with語句的作用是將代碼的作用域設(shè)置到特定的對(duì)象中。嚴(yán)格模式下使用with語句會(huì)報(bào)錯(cuò)。定義with語句的目的是簡(jiǎn)化同一個(gè)對(duì)象的多次編寫問題,如下例:

              var qs = location.search.substring(1);

              var hostName location.hostname;

              var url = location.href;

              // 上面的代碼中都包含location對(duì)象,使用with語句可以將代碼簡(jiǎn)化如下

              with(location){

              var qs = search.substring(1);

              var hostName = hostname;

              var url = href;

              }

              四、函數(shù)

              ------------------------------

              JavaScript中的函數(shù)使用function關(guān)鍵字來聲明

              function(arg0, arg1, arg2, ..., argn){

              statements

              }

              理解參數(shù)

              JavaScript中的參數(shù)有一下特點(diǎn):

              不介意你傳遞幾個(gè)參數(shù),即使你在定義函數(shù)時(shí)規(guī)定了接收幾個(gè)參數(shù),它都不會(huì)報(bào)錯(cuò)。

              不在乎你傳遞的參數(shù)是什么數(shù)據(jù)類型。

              之所以會(huì)這樣,是因?yàn)镴avaScript函數(shù)內(nèi)部的參數(shù)使用一個(gè)類數(shù)組對(duì)象來表示的,所以函數(shù)接收到的始終都是這個(gè)類數(shù)組對(duì)象,而不關(guān)心這個(gè)對(duì)象里面有什么參數(shù),在函數(shù)體內(nèi)可以是用arguments對(duì)象來訪問這個(gè)類數(shù)組對(duì)象,可以使用方括號(hào)的語法如:arguments[0]、arguments[1]等,這個(gè)事實(shí)說明一個(gè)重要的特點(diǎn):

              命名參數(shù)并不是必須的,它只是提供了便利而已。

              通過arguments的length屬性獲知有多少個(gè)參數(shù)傳遞給了函數(shù):

              function howManyArgs(){

              alert(arguments.length);

              }

              howManyArgs("string", 1); // 2

              howManyArgs();   // 0

              howManyArgs(1);   // 1

              關(guān)于arguments有一點(diǎn)比較有意思,就是它的值永遠(yuǎn)與對(duì)應(yīng)的形式參數(shù)同步,即修改了arguments[0]的值會(huì)使對(duì)應(yīng)的命名參數(shù)的值也發(fā)生相應(yīng)的改變。但是這并不是說他們?cè)L問的是相同的內(nèi)存空間,他們有獨(dú)立的存儲(chǔ)空間,只不過值會(huì)同步而已,另外如果值傳遞一個(gè)參數(shù),修改arguments[1]的值是不會(huì)改變對(duì)應(yīng)的命名參數(shù)的值的,這是應(yīng)為,arguments.length的長(zhǎng)度是由傳遞參數(shù)個(gè)數(shù)決定的,而不是命名參數(shù)的個(gè)數(shù)決定的,在這里再次強(qiáng)調(diào)一次, 命名參數(shù)只是提供了便利而已,沒有任何其他作用 。

              沒有重載

              由于JavaScript中的函數(shù)沒有函數(shù)簽名的特征,所以沒有重載,不過可以通過檢查傳入函數(shù)的參數(shù)的類型和數(shù)量作出不同的反應(yīng)來模擬重載。