1. 程式人生 > >if語句裡判斷條件中的逗號

if語句裡判斷條件中的逗號


看到一段在條件判斷裡寫多個式子並用逗號分離的程式碼,邏輯應該是這樣的:

//以下程式碼在瀏覽器控制器中實現

>var a,b,c=5;

> if(a=2,b=3,c==4){var d="test"}    //只判斷最後一個式子,即判斷c==4是否為true,無論c==4是否成立,均執行前面的語句
< undefined
> t                                                //條件為假,不初始化變數d,但仍執行a,b的初始
< ReferenceError: Can't find variable: t 
> a                                              
< 2
> b
< 3
> if(a=2,b=3,c==5){var d="test"}      
< undefined
> d                                             //c==5條件為真,初始化d

< "test"

//說實話不清楚這個寫法有什麼意義,如果前置要執行的語句很長的話看起來不直觀,也就寫外掛裡還行。