Javascript中typeof 用法小结


Posted in Javascript onMay 12, 2015

在js里用到数组,比如 多个名字相同(的)input, 若是动态生成(的), 提交时就需要判断其是否是数组. if(document.mylist.length != "undefined" ) {} 这个用法有误.
正确(的)是 if( typeof(document.mylist.length) != "undefined" ) {}
或 if( !isNaN(document.mylist.length) ) {}

typeof(的)运算数未定义,返回(的)就是 "undefined".
运算数为数字 typeof(x) = "number"
字符串 typeof(x) = "string"
布尔值 typeof(x) = "boolean"
对象,数组和null typeof(x) = "object"
函数 typeof(x) = "function"

typeof 运算符返回一个用来表示表达式(的)数据类型(的)字符串。
可能(的)字符串有:"number"、"string"、"boolean"、"object"、"function" 和 "undefined"。

如:
alert(typeof (123));//typeof(123)返回"number"
alert(typeof ("123"));//typeof("123")返回"string"

typeof 运算符返回一个用来表示表达式(的)数据类型(的)字符串。

typeof[()expression[]] ;

expression 参数是需要查找类型信息(的)任意表达式。

说明

typeof 运算符把类型信息当作字符串返回。typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."
typeof 语法中(的)圆括号是可选项。typeof运算符介绍:
typeof 是一个一元运算,放在一个运算数之前,运算数可以是任意类型。
它返回值是一个字符串,该字符串说明运算数的类型。

你知道下面typeof运算的结果吗?

typeof(1);
typeof(NaN);
typeof(Number.MIN_VALUE);
typeof(Infinity);
typeof("123");
typeof(true);
typeof(window);
typeof(document);
typeof(null);
typeof(eval);
typeof(Date);
typeof(sss);
typeof(undefined);

看看你会几个?

如果看了以后,不是很明白的话,请看下面(明白的人就不用往下看了):
typeof是一个一元运算符,它返回的结果始终是一个字符串,对不同的操作数,它返回不同的结果。

具体的规则如下:

一、对于数字类型的操作数而言, typeof 返回的值是 number。比如说:typeof(1),返回的值就是number。

上面是举的常规数字,对于非常规的数字类型而言,其结果返回的也是number。比如typeof(NaN),NaN在
JavaScript中代表的是特殊非数字值,虽然它本身是一个数字类型。

在JavaScript中,特殊的数字类型还有几种:

Infinity 表示无穷大特殊值
NaN

特殊的非数字值
Number.MAX_VALUE

 可表示的最大数字
Number.MIN_VALUE

 可表示的最小数字(与零最接近)
Number.NaN

特殊的非数字值
Number.POSITIVE_INFINITY 表示正无穷大的特殊值
Number.NEGATIVE_INFINITY 表示负无穷大的特殊值

以上特殊类型,在用typeof进行运算进,其结果都将是number。

二、对于字符串类型, typeof 返回的值是 string。比如typeof("123")返回的值是string。
三、对于布尔类型, typeof 返回的值是 boolean 。比如typeof(true)返回的值是boolean。
四、对于对象、数组、null 返回的值是 object 。比如typeof(window),typeof(document),typeof(null)返回的值都是object。
五、对于函数类型,返回的值是 function。比如:typeof(eval),typeof(Date)返回的值都是function。
六、如果运算数是没有定义的(比如说不存在的变量、函数或者undefined),将返回undefined。比如:typeof(sss)、typeof(undefined)都返回undefined。

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
滚动经典最新话题[prototype框架]下编写
Oct 03 Javascript
window.open被浏览器拦截后的自定义提示效果代码
Nov 19 Javascript
js 走马灯简单实例
Nov 21 Javascript
jQuery实现三级菜单的代码
May 09 Javascript
Bootstrap框架下下拉框select搜索功能
Mar 26 Javascript
微信小程序与php 实现微信支付的简单实例
Jun 23 Javascript
vue-router重定向不刷新问题的解决
Jun 25 Javascript
微信小程序实现漂亮的弹窗效果
May 26 Javascript
百度小程序自定义通用toast组件
Jul 17 Javascript
vuex vue简单使用知识点总结
Aug 29 Javascript
js常用方法、检查是否有特殊字符串、倒序截取字符串操作完整示例
Jan 26 Javascript
js删除指定位置超链接中含有百度与360的标题
Jan 06 Javascript
js/jquery判断浏览器类型的方法小结
May 12 #Javascript
js实现div层缓慢收缩与展开的方法
May 11 #Javascript
JS实现定时自动关闭DIV层提示框的方法
May 11 #Javascript
最精简的JavaScript实现鼠标拖动效果的方法
May 11 #Javascript
JavaScript实现表格点击排序的方法
May 11 #Javascript
JavaScript点击按钮后弹出透明浮动层的方法
May 11 #Javascript
js实现鼠标移到链接文字弹出一个提示层的方法
May 11 #Javascript
You might like
动易数据转成dedecms的php程序
2007/04/07 PHP
浅析PHP中的UNICODE 编码与解码
2013/06/29 PHP
php创建session的方法实例详解
2015/01/27 PHP
PHP读取txt文本文件并分页显示的方法
2015/03/11 PHP
PHP与Perl之间知识点区别整理
2019/03/19 PHP
判断是否输入完毕再激活提交按钮
2006/06/26 Javascript
baidu博客的编辑友情链接的新的层窗口!经典~支持【FF】
2007/02/09 Javascript
js 父窗口控制子窗口的行为-打开,关闭,重定位,回复
2010/04/20 Javascript
30个最好的jQuery 灯箱插件分享
2011/04/25 Javascript
Ubuntu中搭建Nodejs开发环境过程分享
2014/06/01 NodeJs
JavaScript的代码编写格式规范指南
2015/12/07 Javascript
AngularJS 执行流程详细介绍
2016/08/18 Javascript
浅谈JS函数定义方式的区别
2016/10/30 Javascript
JavaScript基础——使用Canvas绘图
2016/11/02 Javascript
Bootstrap下拉菜单Dropdowns的实现代码
2017/03/17 Javascript
vue 使用eventBus实现同级组件的通讯
2018/03/02 Javascript
基于JS实现web端录音与播放功能
2019/04/17 Javascript
node Buffer缓存区常见操作示例
2019/05/04 Javascript
ckeditor一键排版功能实现方法分析
2020/02/06 Javascript
python实现连接mongodb的方法
2015/05/08 Python
浅谈python字符串方法的简单使用
2016/07/18 Python
Python实现的文本编辑器功能示例
2017/06/30 Python
Python实现统计给定列表中指定数字出现次数的方法
2018/04/11 Python
Python3匿名函数lambda介绍与使用示例
2019/05/18 Python
linux环境中没有网络怎么下载python
2019/07/07 Python
python如何用matplotlib创建三维图表
2021/01/26 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
JackJones官方旗舰店:杰克琼斯男装
2018/03/27 全球购物
C#里面可以避免一个类被其他类继承么?如何?
2013/09/26 面试题
经销商年会策划方案
2014/05/29 职场文书
年度评优评先方案
2014/06/03 职场文书
摄影专业毕业生求职信
2014/08/05 职场文书
咖啡厅里的创业计划书
2019/08/21 职场文书
python自动化之如何利用allure生成测试报告
2021/05/02 Python
Python实现8种常用抽样方法
2021/06/27 Python
使用python将HTML转换为PDF pdfkit包(wkhtmltopdf) 的使用方法
2022/04/21 Python