複習Javascript專題(一):基本概念部分

1、數據類型

基本類型:`Null Boolean String Undefined Number(NB SUN)`

引用類型:`Array Function Object`

類型判斷:typeof 返回結果
    `"undefined"(未定義)    "boolean"(布爾值)             "string"(字符串)
    "number"(數值)            "object"(對象或者null)        "funtion"(函數) `
  • 拓展:堆 VS 棧(兩種數據結構)
**堆:**隊列優先,先進先出;由操做系統自動分配釋放 ,存放函數的參數值,局部變量的值等。
          其操做方式相似於數據結構中的棧。
   
 **棧:**先進後出;動態分配的空間 通常由程序員分配釋放, 若程序員不釋放,程序結束時可能由OS回收,
         分配方式卻是相似於鏈表。
  1. 基本類型:基本數據類型能夠直接訪問,他們是按照值進行分配的,存放在棧(stack)內存中的簡單數據段,數據大小肯定,內存空間大小能夠分配。
  2. 引用類型:即存放在堆(heap)內存中的對象,而js不容許直接訪問內存中的位置,所以操做對象時其實是操做其引用,而不是實際對象。程序員

    引伸:js中的淺拷貝與深拷貝 ——待補充數據結構

2、操做符

主要有一元,位,布爾,加,減,乘,關係,相等,條件,賦值,逗號等操做符。
  • ++遞增/--遞減前置和後置區別?

首先要明白,前置是先計算,再賦值;後置是先賦值,再計算。(操做符在前就先計算,在後就後計算)
例如:函數

function a(){ 
    var a=5; 
    var c=a++; 
    console.log(c);  // 5, a先賦值給c,再自增
};

function b(){ 
    var a=5; 
    var c=a++; 
    console.log(c);  // 6, a先自增,再賦值給c
};
  • 數據轉換(隱式和顯式)

a. 顯式:post

Boolean(),Number(),parseInt(),parseFloat(),toString()

b. 隱式:操作系統

遞增、遞減(不管是前置仍是後置),一元加,減,乘,求餘/取模、邏輯非,關係比較,還有if等語句。

這個地方例子還蠻詳細的:https://www.haorooms.com/post...code

3、語句

if,for,for-in,continue,break等
  1. break VS continue

break: 退出整個循環; continue: 退出當前一輪循環;for循環裏兩都皆可用。

引伸:js中的循環遍歷(包括ES6) ——待補充對象

4、函數

  • 定義函數的幾種方式?

    a. 函數聲明: function fn(){...}
    b. 函數表達式:let fn=function(){...}
    c. 構造函數方式:let fn=new Function(參數,...,函數體)隊列

相關文章
相關標籤/搜索