js基礎(chǔ)第一天

1.歷史

  • 1.什么是JavaScript

    • 1995年在網(wǎng)景公司,發(fā)明的JavaScript。一開始JavaScript叫做LiveScript,但是由于當時Java這個語言特別火,就改名為JavaScript,同時期還有其他的網(wǎng)頁語言,比如VBScript、JScript等等,但是后來都被JavaScript打敗,所以現(xiàn)在的瀏覽器中,只運行一種腳本語言就是JavaScript,簡稱:JS。
  • 2.JavaScript與ECMAScript的關(guān)系

    • ECMAScript是一種由Ecma國際前身為歐洲計算機制造商協(xié)會,英文名稱是European Computer Manufacturers Association,制定的標準。
      JavaScript是由公司開發(fā)而成的,公司開發(fā)而成的一定是有一些問題,不便于其他的公司拓展和使用。所以歐洲的這個ECMA的組織,牽頭制定JavaScript的標準,取名為ECMAScript。
      簡單來說ECMAScript不是一門語言,而是一個標準。符合這個標準的比較常見的有:JavaScript、Action Script(Flash中用的語言)
  • 3.JavaScript作用

    • 在HTML網(wǎng)頁中,主要分為三大塊:HTML、CSS、JavaScript
      • HTML從語義上構(gòu)造網(wǎng)頁
      • CSS從審美上美化界面
      • JavaScript從交互上提升用戶的用戶體驗
  • 4.js被稱為對初學(xué)者友好的語言

2.第一個JavaScript程序

  • 1.Script標簽的說明

    • 位置: 可以放在html中的任意位置,但是最好放在body的結(jié)束標簽上面
    • 和style標簽一樣type可以省略不寫
  • 2.演示helloWorld

      // 括號里面只能放字符串/數(shù)值/元素/對象
      alert('hello world');
    
  • 3.JavaScript中的注釋

    • 單行注釋: 以 // 開頭,后面的內(nèi)容就是注視
    • 快捷鍵 ctr(cmd) + /
    • 多行注釋: /**/ 多行注釋可以換行,但是不能嵌套
    • 快捷鍵 ctr(cmd) + shift + /

3.變量

  • 1.概念: 變量是用來存儲信息的容器

  • 2.使用一個變量分為3步

      a.聲明變量 用var來定義一個變量例如 var a;
      b.賦值 賦值采用 = 來賦值  a=10;
      c.使用
      聲明的一個變量的時候可以直接賦值 例如 var b = 20;
    
  • 3.變量的命名規(guī)范

      1.以字母 a-z A-Z 數(shù)字0-9 字符 _ $ 組成
      2.變量不能以數(shù)字開頭, 不能使用關(guān)鍵字命名
      3.變量的命名采用駝峰命名法 首個單詞字母小寫,后面的單詞首字母大寫 例如 lastName
    
    • 變量命名不能和保留字重名
      [圖片上傳失敗...(image-e67c7-1511529697813)]
      [圖片上傳失敗...(image-94c5d1-1511529697813)]
  • 4.變量的類型

    • 變量類型為5種

      • 字符串(string)
      • 數(shù)字(number) 0-9
      • 布爾(boolean) true/false
      • 對象(object)
      • 未定義(undefined)

      用 console.log(typeof a);來查看輸出的類型

      typeof 關(guān)鍵字用來輸出變量的類型

  • 5.控制臺輸出

      console.log(1); // 輸出普通日志
      console.warn('1'); // 輸出警告日志
      console.error('1'); // 輸出錯誤日志
      輸出日志的快捷鍵
      a.log + enter
    

4.運算符

  • 1.算數(shù)運算符 + - * / %(取余/取模) ++ --

      var a = 5;
      var b = 10;
      var c = a + b;
      var d = a - b;
      var e = a * b;
      var f = a / b;
      var g = a % b;
      a++;
      a--;
    
  • 2.算數(shù)運算符的優(yōu)先級, 先乘除(取余)后加減

      var a = 2 + 3 * 4; 結(jié)果是 14
      如果想提升優(yōu)先級的話用 ()來提升
      var a = (2 + 3) * 4; 輸出 20
      如果要 a = a + 5;可以簡寫成 a+=5;
    
  • 3.關(guān)系運算符

      > < == >= <= != ===
    
    • 關(guān)系運算符得到的結(jié)果為布爾值
    • 關(guān)系運算符不能連用,如果想連用用邏輯運算符
  • 4.邏輯運算符

      && || !
      && 有假則為假
      || 有真則為真
      ! 取反
    
    • 邏輯運算符參與運算的是布爾值

5.if語句

  • 1.if語句

      在開發(fā)中需要判斷條件執(zhí)行代碼的時候需要用if語句
      if(判斷條件){
          當條件為真的時候執(zhí)行代碼
      }
    
  • 2.if else

      if(判斷條件){
          當條件為真的時候執(zhí)行代碼塊
      }else{
          當條件為假的時候執(zhí)行代碼塊
      }
    

    else 可以省略

  • 3.三目運算符: 判斷條件 ? 語句1 : 語句2

    • 當判斷條件為真執(zhí)行語句1, 為假 執(zhí)行語句2
  • 4.if else語句 特點: 只能執(zhí)行一個代碼塊

      if(判斷條件1){
          當為真的時候執(zhí)行代碼塊 1
      }else if(判斷條件2){
          當為真的時候執(zhí)行代碼塊 2
      }else if(判斷條件3){
          當為真的時候執(zhí)行代碼塊3
      }else if(判斷條件4){
          當為真的時候執(zhí)行代碼塊 4
      }else if(判斷條件5){
          當為真的時候執(zhí)行代碼塊 5
      } 
      ...
      else{
          當以上所有的條件都不為真的時候執(zhí)行代碼塊
      }
    

6.switch語句

switch (變量){
    case 值1:
        語句1;
        break;
    case 值2:
        語句2;
        break;
    case 值3:
        語句3;
        break;
    case 值4:
        語句4;
        break;
    ...
    default:
        語句n;
        break;
}
使用 break 來阻止代碼自動地向下一個 case 運行

案例星期一到星期日

7.循環(huán)

  • 1.for循環(huán)

      for(單次表達式;條件表達式;末尾循環(huán)體)
      {
          中間循環(huán)體;
      }
    
    • 終止循環(huán)用break
    • 終止本次循環(huán)用continue
  • 2.while循環(huán)

      while(判斷條件){
          循環(huán)體 
      }
    
  • 3.do-while循環(huán)

      do{
          循環(huán)體
      }while(判斷條件)
    

while循環(huán)和do-while循環(huán)的區(qū)別是 do-while循環(huán)先執(zhí)行代碼,再判斷,while循環(huán)是先判斷再執(zhí)行代碼

8.函數(shù)

  • 1.函數(shù)是由事件驅(qū)動的或者當它被調(diào)用時執(zhí)行的可重復(fù)使用的代碼塊

  • 2.函數(shù)是用來封裝特定的功能的代碼塊 利用函數(shù)可以提高代碼的復(fù)用性

      function 函數(shù)名() {
         函數(shù)體/要執(zhí)行的代碼
      }   
      函數(shù)只有調(diào)用的時候才會執(zhí)行封裝的代碼
      函數(shù)調(diào)用 函數(shù)名()
    
  • 3.函數(shù)可以傳遞參數(shù)

      function sum(a,b) {
          alert(a+b);
      }
      sum(1,2);
    
  • 4.獲取函數(shù)實際傳入?yún)?shù)的個數(shù),和定義傳入?yún)?shù)的個數(shù)

      function sum(a,b) {
      // 獲取函數(shù)的實際傳入的參數(shù)的個數(shù)
      console.log(sum.arguments.length);
      // 獲取函數(shù)定義的參數(shù)個數(shù)
      console.log(sum.length);
    
      alert(a+b);
      }
      sum(1,2,3);
    
  • 5.函數(shù)的返回值

      function sum(a,b) {
          return a+b;
      }
      // 將函數(shù)執(zhí)行的結(jié)果賦值給變量 s
      var s = sum(1,2,3);
      console.log(s);
    

使用return 結(jié)束并返回 return后面的代碼不再執(zhí)行

  • 6.函數(shù)的變量提升

      var a = 10;
      function fn() {
          console.log(a);
          var a = 20;
      }
      fn();
    

    如果函數(shù)內(nèi)部有變量和函數(shù)外部的變量是一樣的,會優(yōu)先取函數(shù)內(nèi)部的變量
    如果在使用后面定義變量,這個時候就會將函數(shù)的聲明定義在使用之前,而賦值還在函數(shù)后面


    116409-106.jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容