javaScript基礎概念小知識點集

weixin_33727510發表於2017-12-05

資料型別

  • typeof是一個操作符而不是函式,因此例子中圓括號儘管可以使用,但不是必須的。
  • 只要在儲存物件的變數還沒有真正儲存物件,就應該明確的讓該變數儲存null
  • NaN是一個特殊的數值,與任何值都不相等。
  • 可以利用praseInt做進位制轉換器,parseInt(值,進位制)
  • 如果字串包含的是一個可解析為整數的數(沒有小數點,或者小數點後都是零),parseFloat()會返回整數。
  • 字串的特點:字元一旦被建立,它們的值就不能改變。要改變某個變數儲存的字串,首先要銷燬原來的字串,然後再用另一個包含新值的字串填充該變數。
  • null和undefined沒有toString()方法,但可以對其調String()方法

操作符

  • --num和num--
    --num變數的值是在語句被求值以前改變的(在電腦科學領域,這種情況通常被稱作副作用)
var num1 = 2;
var num2 = 20;
var num3 = --num1 + num2;//等於21
var num4 = num1 + num2;//等於21

num--是在包含它們的語句被求值之後才執行的。

var num1 = 2;
var num2 = 20;
var num3 = num1-- + num2;//等於22
var num4 = num1 + num2;//等於21

位操作符

  • 按位非(~),返回數值的反碼
  • 按位與(&),0|1返回0
  • 按位或(|)0|1返回1

布林操作符

  • 邏輯非(!)
  • 邏輯與(&&)
    邏輯非

操作屬於短路操作,如果第一個操作能決定結果,就不會再對第二個運算元求值。

  • 邏輯或(||)

加性操作符

var a = 5 - ture;//4,ture被轉換為1
var b = NaN - 1;//NaN
var c = 5-"";//5,“”被轉化為0
var d = 5 - "2";//3,“2”被轉化為2
var e = 5 - null;//5,因為null被轉換成0

關係操作符

var a = "a"<3;//false,因為“a”被轉換成了NaN

函式

在ECMAScript中的引數在內部用一個陣列arguments來表示的。arguments物件只是與陣列類似(它並不是Array的例項),但可以用length屬性來確定傳遞進來多少個引數。

我們可以利用引數的個數的不同而對函式執行不同的操作。

所有的引數傳遞的都是值,不是引用。

相關文章