document.getElementById)?true:false 和 (document.all)?true:false 在JS中分别是什么意思 10
1个回答
展开全部
这个是一个三元运算表达式。 a? b:c。 a计算的结果为真的时候,返回的结果是b的值,否则是c的值。
(1)(document.getElementById)?true:false;
就是判断document里面有没有getElementById这个成员,我们知道getElementById显然是document的一个函数,因为这是真的,所以这个表达式的返回值为b的值,也就是true;
(2)(document.all)?true:false
同理,document.all是页面内所有元素的一个集合。例如:document.all(0)表示页面内第一个元素。但是,这是一个奇怪的方法,它起源于IE 4不过在其他的浏览器或多或少的兼容,比如刚刚我用google浏览器测试了一下,这个表达式的返回值为false,也就是说,谷歌浏览器并不支持该方法。同时,我也查到了这个方法可以用来判断浏览器是否为IE浏览器,但是其可靠性并没有验证。
所以,可以粗略的得出一个答案:如果是IE浏览器的话,这句表达式返回的结果是true;否则,为false,也因为可以使用该表达式判断当前的环境是否是IE浏览器。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询