js中 关于document.oncontextmenu = new function() {return false;};

js中 关于document.oncontextmenu = new function() {return false;};

这句代码是不是返回一个boolean类型对象false然后赋给oncontextmenu?
new function() {......}本身代表返回一个对象 我就是想知道这个对象是不是一个boolean类型的对象(false)?

第1个回答  2009-08-30
我来更正一下,如下语句
new function() {return false;};
返回一个对象,但绝不是一个函数对象,和语句function (){return false};含义也不同,当然更不是一个boolean对象了。

比如:
var f = new function() {return false;};
alert(typeof f);
通过浏览器的提示框可以看到f的类型是object而不是function。
而:
var f = function(){return false;}
alert(typeof f);
这个f才是function。

如果禁止右键菜单不要这么写,而要写成:
document.oncontextmenu = function() {return false;};

至于提问者说的返回boolean的写法为:
var f = (function(){return false;})();
alert(f);
f为false。本回答被网友采纳
第2个回答  2009-08-30
你理解错了
new function() {return false;}; 是创建一个函数对象和
function (){return false}; 一样
oncontextmenu是一个右键点击事件,意思是在doucment的范围内右键点击触发 函数 new function() {return false;};
相似回答
大家正在搜