JS 语法: document.getElementById没有括号

请看下面这条语句:

var ns6=document.getElementById && !document.all

为什么document.getElementById的后面没有括号和参数?这条语句什么意思??

 

 

 

首先说,不是语法错误,如果谁认为是语法错误,那说明对javascript的本质根本就不了解。

javascript 的只是基本上可以分成 core javascript 和 client side javascript ,而document 则属于浏览器端(client side)的一个语言原有对象,而 getElementById 和all 这两个方法是document的原有方法。

但是 ,正式由于依赖client side ,所以,有的浏览器可能为document提供了 getElementById和 all 两个方法,有的可能只提供了前者...

由于存在all 等方法在特定的浏览器调用不到的情况,我们就需要对这两个方法进行判断

如果两个方法都有,你这个ns6就是true ,如果 有一个或两个没有提供,那么ns6就是false。


再简单点说  

用 document.getElementById 当作if 这样语句的条件,可以判断document是不是有getElementById的属性或者方法。
posted @   郑文亮  阅读(719)  评论(6编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
历史上的今天:
2011-11-29 iOS开发技巧:使用Objective-C创建UUID的代码
2011-11-29 iPhone开发-输出口和操作(转)
2011-11-29 电子标签价格表
2011-11-29 超高频读写器报价单
2011-11-29 超高频电子标签价格
2011-11-29 RFID基础知识
2011-11-29 电子标签简介
点击右上角即可分享
微信分享提示