我有一些代码
function x() {
this.type = 'image' | 'file';
// ...
}
按位or
是什么意思?该函数不会生成错误,但我只是不理解代码。
答案 0 :(得分:0)
按位或意思是什么?
嗯,这是一个按位OR。问程序员它应该是什么意思 - 虽然这似乎是一个错误。
那它做了什么?
它将两个参数转换为数字(这将导致两个字符串为NaN
)然后转换为32位整数(这将导致0
),然后将它们转换为零。这将永远发生,因此它相当于this.type = 0;
。
可能意味着什么?
“默认”运算符||
可能是常见且类似的,但在这里对我没有意义(构造函数中没有参数,操作数不是变量)。我的猜测是:
+
运算符将连接两个字符串,并且位于某些键盘上的|
键旁边 - 但使用单个字符串文字会更合理type
属性表示各种类型的位掩码。