Я часто вижу код JavaScript, где функция может принимать объект «options» и использовать его следующим образом:
var name = typeof options.name !== 'undefined' ? options.name : "Bob";
Кажется, что это будет эквивалентно следующему:
var name = options.name || "Bob";
Теперь я понимаю, что в некоторых ситуациях вам может показаться, что options.name
равно undefined
против null
, и это имеет смысл для меня, но я часто вижу это в ситуациях, когда это различие не нужно.*
Мне кажется, я слышал, что люди пишут такой код из-за какой-то ошибки в IE.Может кто-нибудь уточнить, пожалуйста?