<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>js中的!!使用:</title> <script type="text/javascript" src="test.js"></script> </head> <body> <script> /* 由于对null与undefined用!操作符时都会产生true的结果, 所以用两个感叹号的作用就在于, 如果明确设置了o中flag的值(非 null/undefined/0""/等值),自然test就会取跟o.flag一样的值; 如果没有设置,test就会默认为false,而不是 null或undefined */ var o={flag:true}; var a={flag:undefined} var b={flag:null}; alert(!!o.flag);//弹出:true alert(!!a.flag);//弹出:false alert(!!b.flag);//弹出:false </script> </body> </html>