JavaScript之表示式和運算子

2021-07-22 08:15:50 字數 1984 閱讀 4873

型別列表示期望的運算元型別,以及運算子結果型別。lval 表示左值。

運算子操作an

型別++

前 / 後增量r1

lval -> num

–前 / 後減量r1

lval -> num-求反

r1num->num

+轉換為數字r1

num->num

~按位求反r1

int->int

!邏輯非r1

bool->bool

delete

刪除屬性r1

lval->bool

typeof

檢測運算元型別r1

any->str

void

返回 undefined 值r1

any->undef

乘、除、求餘l2

num,num->num

+、-加、減l2

num,num->num

+字串連線l2

str,str->str

<<

左移位l

2int,int->int

>
有符號右移l2

int,int->int

>

無符號右移l2

int,int->int

<、 <=、>、>=

比較數字順序l2

num,num->bool

<、 <=、>、>=

比較在字母表中的順序l2

str,str->bool

instanceof

測試物件類l2

obj,func->bool

in測試屬性是否存在l2

str,obj->bool

==判斷相等l2

any,any->bool

!=判斷不等l2

any,any->bool

===判斷恒等l2

any,any->bool

!==判斷非恒等l2

any,any-bool

&按位與l2

int,int->int

^按位異或l2

int,int->int

|按位或l2

int,int->int

&&邏輯與l2

any,any->any

| |邏輯或l2

any,any->any

? :條件運算子r3

bool,any,any->any

=變數賦值或物件屬性賦值r2

lval,any->any

*= 、/=、%=、+=、-=、&=

^=、|=、<<=、>>=、>>>=

運算且賦值r2

lval,any->any

,忽略第乙個運算元,返回第二個運算元l2

any,any->any

* 屬性訪問表示式和呼叫表示式的優先順序要比所有運算子都高。

如果運算元中沒有字串,則都轉化為數字。

加法操作符的行為表現為:

xtypeof x

undefined

「undefined」

null

「object」

true 或 false

「boolean」

任意數字或 nan、infinity

「number」

任意字串

「string」

任意函式

「function」

任意內建物件 非函式

「object」

任意宿主物件

由編譯器各自實現的字串 ,但不是 「undefined」、」boolean」、」number」、」string」

* ecmascript 3 規範規定所有內建可執行物件,typeof 一律返回」function」。

* ecmascript 5 規範規定所有可執行物件,包括內建物件和陣列物件一律返回」function」。

javascript學習筆記之表示式

1.with表示式 如 with frames 1 document.forms 0 name.value address.value email.value 也可以寫為 var form frames 1 document.forms 0 form.name.value form.address....

javascript 邏輯表示式

1.邏輯與 運算子首先計算左運算元的值,即首先計算 左側表示式。如果計算結果是假值,那麼整個表示式的結果一定也是假值,因此 這時簡單地返回左運算元的值,而不會對右運算元進行計算。反過來講,如果左運算元是真值,那麼整個表示式的結果則依賴於右運算元的值,如果右運算元是真值,那麼整個表示式的值一定是真值 ...

Javascript之正規表示式基礎

regexp 物件表示正規表示式,它是對字串執行模式匹配的強大工具。1 regexp 物件的建立 直接量語法 pattern attributes 建立 regexp 物件的語法 new regexp pattern,attributes 注 引數 pattern 是乙個字串,指定了正規表示式的模式...