我在看這個Javascript類:||的用途是什麼? []操作
'use strict';
class Account {
constructor(a, b, c) {
this.a = a
this.b = b || []
this.c = c || []
}
}
什麼是b || []
說什麼?
我在看這個Javascript類:||的用途是什麼? []操作
'use strict';
class Account {
constructor(a, b, c) {
this.a = a
this.b = b || []
this.c = c || []
}
}
什麼是b || []
說什麼?
||
運算符返回它看到的第一個真y值。許多人會將此用作設置變量默認值的快捷方式,因爲undefined
爲false-y。這樣做的問題是默認也將用於null
,false
,0
,NaN
和空字符串(所有這些可能實際上也可能不實際是有效值)。
在這種情況下,如果b
或c
是undefined
(或任何其它假Y值),和this.b
this.c
將被設置爲[]
。
null'和''''-.- – CoderPi
@CodeiSir' - 我添加了'null'並且已經提到了空字符串。 –
這是從哪裏來的? – Lasoloz
如果是b可以被評估爲false,它會返回[],否則返回b – CoderPi
http://stackoverflow.com/questions/4576867/javascript-or-operator-with-a-undefinded-variable – epascarello