document.getElementById)?true:false 和 (document.all)?true:false 在JS中分别是什么意思 10

 我来答
冰菓冰菓
2017-02-20 · TA获得超过496个赞
知道小有建树答主
回答量:271
采纳率:0%
帮助的人:231万
展开全部

这个是一个三元运算表达式。 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浏览器。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式