请教高手,JS中typeof() !== 'undefined'是什么意思,高手能说一下吗,谢谢

if(typeof(var)!=='undefined')和if(var=='undefined'),if(var)这三者有什么区别呢。小弟刚学JS,高手能讲讲吗还有ty... if(typeof(var) !== 'undefined')和if(var == 'undefined'), if(var)
这三者有什么区别呢。
小弟刚学JS,高手能讲讲吗
还有typeof(var) !== 'undefined'),typeof(var) != 'undefined',这两个写法是不是都行?
!==, 有这个运算,书里头是这样写的
展开
 我来答
不咩a
2019-07-25 · TA获得超过1.2万个赞
知道答主
回答量:6
采纳率:0%
帮助的人:1364
展开全部

typeof(var)是用来判断变量是否为数组的。JS中经常需要操作HTML控件,大家知道,HTML空间如果名字都取相同的话,那么使用document.getElementsByName就可以取得一个数组。

如果想使用if(document.aaa.length!="undefined")来判断名字为"aaa"的控件在页面中是否存在多个(也就是数组)的话,这个用法就会报错。这时就要使用if(typeof(document.aaa.length) !== 'undefined')。

至于if(var=='undefined'),是要判断变量是否未定义,即是否不存在,最简单的示例,你的js中有两个function,一个是function a(a1,a2),它有两个形参a1和a2,还有一个function b(),在b中调用a:a(var);却只给它传一个参数,这时function a中的a2的值就是undefined。

if(var)中的var是boolean变量,它只有true和false两个值,倘若var==true,那么将会执行if{}中的代码,反之跳过。


扩展资料

JavaScript脚本语言具有以下特点:

1、脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。

2、基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。

3、简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。

4、动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。

5、跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支 持JavaScript脚本语言,目前JavaScript已被大多数的浏览器所支持。

参考资料来源:百度百科-js

零点二十
推荐于2017-11-28 · 超过16用户采纳过TA的回答
知道答主
回答量:38
采纳率:0%
帮助的人:8万
展开全部
typeof(var)是用来判断变量是否为数组的。

JS中经常需要操作HTML控件,大家知道,HTML空间如果名字都取相同的话,

那么使用document.getElementsByName就可以取得一个数组。

如果想使用if(document.aaa.length!="undefined")来判断名字为"aaa"的

控件在页面中是否存在多个(也就是数组)的话,这个用法就会报错。

这时就要使用if(typeof(document.aaa.length) !== 'undefined')。

=================================================================

至于if(var=='undefined'),是要判断变量是否未定义,即是否不存在,

最简单的示例,你的js中有两个function,一个是function a(a1,a2),

它有两个形参a1和a2,还有一个function b(),

在b中调用a:a(var);

却只给它传一个参数,这时function a中的a2的值就是undefined。

====================================================================

if(var)中的var是boolean变量,它只有true和false两个值,倘若var==true,

那么将会执行if{}中的代码,反之跳过
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友4239a47
2012-06-04
知道答主
回答量:4
采纳率:0%
帮助的人:6424
展开全部
!== 和!= 一个是地址的比较,一个引用比较,分配的空间是不一样的,比如 '1' == 1 这个就是true,'1'=== 1 这个就是false,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
狠心拒绝
2009-08-11 · TA获得超过371个赞
知道小有建树答主
回答量:374
采纳率:0%
帮助的人:319万
展开全部
不一样。。

第一个写法错误 !== 。。。。没有这种运算符把。。

---------------
对不起我火星了。 这个表达试确实能运行。。

但他好象和!=效果一样。具体就不知道了。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式