2013-07-26 72 views

回答

2

這是合乎邏輯的,但基本上等同於C#的null-coalescing operator ??。如果左邊是false,它會解析到左邊或右邊。

有一點需要注意的是,由於Javascript的動態輸入,情況並不像C#那樣清晰。 ||強制將左側值轉換爲布爾值,並且有多種值將最終轉換爲false。例如,使用Javascript將評估所有這些爲 「其他」:

* false || 'other'; 
* 0 || 'other'; 
* '' || 'other'; 
* undefined || 'other'; 
0

正如評論||相當於c#的coalesce操作符??。 []是一個空數組。在這種情況下,grid是粒子數組的數組。 C#等效代碼將爲:

// Particle[][] grid = ... 

Particle[] g = grid[iy * gw + ix] ?? new Particle[];