JavaScript(一)

  • JavaScript 起源(了解即可)
    最初由網(wǎng)景(netscape)公司推出,一開始叫Livescript,由于當(dāng)時(shí)Java十分火爆,為了蹭一波熱度,因此他們?cè)谛聻g覽器版本發(fā)布前夕把LiveScript改名為JavaScript,從此JavaScript就誕生了。

  • Javascript 是什么:是一種跨平臺(tái),事件驅(qū)動(dòng)、基于原型的面向?qū)ο蟆⑷踅忉屝?、單線程客戶端腳本語言
    最初目的: 解決繁瑣的表單驗(yàn)證
    演變與關(guān)系: Livescript、Javascript、JScript、ECMAScript
    版本: es5 2012 es6 2015 es7\es8

  • Javascript 由三部分組成,分別是:
    ECMAScript
    Javascript的語言核心,是一個(gè)標(biāo)準(zhǔn),可以理解為一系列的規(guī)定;比如有什么數(shù)據(jù)類型,代碼風(fēng)格是怎么樣之類的...
    BOM
    瀏覽器對(duì)象模型
    DOM
    文檔對(duì)象模型

  • 使用JS的兩種形式

  // JS注釋  
    //  單行注釋        
    /* 多行注釋 */

 // 內(nèi)聯(lián)寫法
    <script>
        // 萬事hello word起步,
        // document.write()方法:把括號(hào)中的內(nèi)容輸出到文檔中
        document.write('<h1>Hello World</h1>')
    </script>

 // 外鏈 引入
 // 編寫a.js文件
      document.write(‘<h1>Hello World</h1>');

 // 在HTML中引入JS
    <script src="a.js">
  • 注意點(diǎn)
    1.不管是內(nèi)聯(lián)使用JS還是外鏈引入JS的方式,都推薦在HTML</body>前面使用
    2.src 屬于覆蓋屬性
    <script src="a.js"> 
      // 不會(huì)執(zhí)行,會(huì)被a.js中的內(nèi)容覆蓋
       document.write('告辭!!!');
    </script>
  • 聲明變量規(guī)則

    1. 使用 var 、 let / const (es6新增) 關(guān)鍵字聲明
    2. JS是弱類型語言,聲明變量時(shí),不需要聲明類型
    3. 聲明變量,不賦值,得到的結(jié)果是undefined
  • 變量命名規(guī)范

    1. 必須以 美元符號(hào) 或 英文字母開頭,由 美元符號(hào)、下劃線 和 英文字母數(shù)字組成
    2. 不能使用JS關(guān)鍵字、保留字
    3. 英語字母區(qū)分大小寫
    4. 駝峰式命名法
  • JS數(shù)據(jù)類型

    • 基本數(shù)據(jù)類型:Number、String、Boolean、Undefined、null、Symbol(es6新增)
    • 引用類型:object({}、[]), function
  • 判斷一個(gè)變量的類型

// typeof() 
var a = 5
typeof(a)      // number

// 幾種特殊情況
typeof(null)          // object
typeof(function)    // function
typeof(NaN)        // number
  • instanceof 判斷一個(gè)實(shí)例是否屬于某種類型
// instanceof 關(guān)鍵字
var arr  = []
arr instanceof Array  // true
  • 強(qiáng)制類型轉(zhuǎn)換

    1. xxx.toString():強(qiáng)制轉(zhuǎn)換為字符串
      null 和 undefined不可以強(qiáng)制轉(zhuǎn)換為字符串

    2. Number():強(qiáng)制轉(zhuǎn)換為數(shù)字
      只有數(shù)字字符串,才可以轉(zhuǎn)換為數(shù)字
      空字符串轉(zhuǎn)為數(shù)字0,其它字符串都為NaN
      true 為 1,fasle 為 0
      null 為 0,undefined 為 NaN --not a number
      任意兩個(gè)NaN互不相等

    • Number的幾個(gè)常用方法
parseInt()
      console.log(parseInt('12abc456'));    // 12
      console.log(parseInt('1阿爸34'));      // 1
      console.log(parseInt('abc12345'));   // NaN

 parseFloat() 
      console.log(parseFloat('123.456abcd')) //123.456
  // 字符串要求: 必須以數(shù)字開頭, 碰到非數(shù)字的字符結(jié)束, 返回來一個(gè)整數(shù)

isNaN():判斷是否為數(shù)字,本身屬于Number

xxx.toFixed(num)
  // 四舍五入保留num位小數(shù),轉(zhuǎn)換一個(gè)數(shù)字,返回字符串?。?!
  1. Boolean():強(qiáng)制轉(zhuǎn)換為布爾
    字符串轉(zhuǎn)布爾:非空即為真
    數(shù)字轉(zhuǎn)布爾:非0即為真
    null 、undefined 都為false
    所有的對(duì)象,轉(zhuǎn)為布爾類型, 一定為true
  • 運(yùn)算符
    1. 算數(shù)運(yùn)算符 + - * / %(取模)

    2. 賦值運(yùn)算符 = += -= *= /= %=

    3. 一元運(yùn)算符(自增、自減)
      ++i,增加變量,返回一個(gè)新的值
      i++,增加變量,返回舊的值
      --i, 減少變量,返回一個(gè)新的值
      i--, 減少變量,返回舊的值

      var k = 4;
      var sum = k + ++k + k++ + ++k + --k + k--;
        // 4 + 5 + 5 + 7 + 6 + 6
      console.log(k);    // 5
      console.log(sum); // 33
  1. 關(guān)系運(yùn)算符
    == === >= <= > <
    返回布爾類型的值

  2. 邏輯運(yùn)算符
    || 有一真即返回
    && 有一假即返回
    ! 把值隱式轉(zhuǎn)換為布爾類型,取反

  3. 三元運(yùn)算符 ( ?:)

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

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

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