[英]Can someone please explain what this bit of javascript code is doing?
[英]Can someone please explain to me what the “|” symbol is doing in Javascript?
它有什么作用?
起初我以為這是做Math.max()
的簡寫方式
每次執行(1 | 0)
或(0 | 2985235)
,我都會取回更大的數字。
但是,我錯了,當我通過示例發布此問題時很快發現:
(128|256|0)
不等於256
。
感謝您的有用回復。
|
是按位或運算符。 要查看其作用,請考慮數字的二進制形式:
128 = 010000000
256 = 100000000
0 = 000000000
結果是逐位執行OR
384 = 110000000
我想您可能會在表示選項的邏輯中遇到此模式。 例如,
128 = option 1
256 = option 2
384 = both option 1 & 2
|
是Javascript中的按位運算符。 因此,在評估這些整數之前,請先將它們轉換為二進制。
0 -> 000000000
128 -> 010000000
256 -> 100000000
根據您的數據類型,前面的零可能還會更多。 反正|
作為按位OR運算符,將從這兩個整數中求出每個位。
這樣一來,您將得到110000000,即十進制的384。
PS OR操作:如果其中任何一個成立,則為true。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.