前端面试题小探(1)
来源:互联网 发布:域名申请 编辑:程序博客网 时间:2024/05/19 14:39
头条截到一个面试题,运行了一下,感受到了来自这个世界满满的爱。
直接上代码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>前端面试题小探(1)</title></head><body><div> <div> <p> var a;<br> var b = a * 0;<br> if (b == b) {<br> console.log(b * 2 + "2" - 0 + 4);<br> } else {<br> console.log(!b * 2 + "2" - 0 + 4);<br> }<br> </p> </div><button id="first">第一题</button> <div> <h3> 涉及知识点 </h3> <h5> undifine的任何计算为NaN </h5> <h5> NaN不等于任何值,包括它本身 </h5> <h5> 2 + "3" - 2 + 4 => {2+ "" + (3-2+4)} </h5>
<h5> 2 + "3" + 4 - 2 => {2+ "3" + "" + (4-2)} </h5>
</div></div><script type="text/javascript" src="../jquery/jquery-min.js"></script><script type="text/javascript"> $("#first").click(function() { var a; var b = a * 0; var c = a - 3; console.log(a,"aaa"); console.log(b,"bbb"); console.log(c,"ccc"); console.log(NaN*2,"nan*2"); console.log(!b,"!b"); console.log("2" - 0); console.log(!b * 2); console.log("23" + 2 + 10,"\"23\" + 2 + 10"); console.log(!b * 2 + "2" + 4); console.log( 2 + "3" + 4); console.log( 2 + "3" - 2 + 4,"2 + \"3\" - 2 + 4"); console.log( 2 + "3" + 4 - 2,"2 + \"3\" + 4 - 2"); console.log("3" - 2); console.log("3" + 2); if (b == b) { console.log(b * 2 + "2" - 0 + 4); } else { console.log(!b * 2 + "2" - 0 + 4); } var getType=Object.prototype.toString; console.log(getType.call(a)) console.log(getType.call(b)) console.log(getType.call(c)) console.log(getType.call(NaN*2)) console.log(getType.call(!b),"!b") console.log(getType.call(!b * 2),"!b * 2") console.log(getType.call("5" - 2),"\"5\" - 2") console.log(getType.call("5" + 2),"\"5\" + 2") console.log(getType.call(2 - "3")) console.log(getType.call("2")) console.log(getType.call("23" + 2 + 10)) console.log(getType.call( "2" - 0 + 4)," \"2\" - 0 + 4",( "2" - 0 + 4)); console.log(getType.call(!b * 2 + "2" - 0 + 4),"!b * 2 + \"2\" - 0 + 4",(!b * 2 + "2" - 0 + 4)) })</script></body></html>
小菜鸟的console.log帮手,运行结果打印
0 0