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 相关文章推荐
fix-ie5.js扩展在IE5下不能使用的几个方法
Aug 20 Javascript
JavaScript 高级篇之函数 (四)
Apr 07 Javascript
JavaScript代码复用模式详解
Nov 07 Javascript
jquery带下拉菜单和焦点图代码分享
Aug 24 Javascript
用原生js统计文本行数的简单示例
Aug 19 Javascript
Chrome浏览器的alert弹窗禁止再次弹出后恢复的方法
Dec 30 Javascript
jQuery ajax实现省市县三级联动
Mar 07 Javascript
AnglarJs中的上拉加载实现代码
Feb 08 Javascript
vue 之 .sync 修饰符示例详解
Apr 21 Javascript
Vue 实现一个命令式弹窗组件功能
Sep 25 Javascript
JS写滑稽笑脸运动效果
May 28 Javascript
javascript实现贪吃蛇小练习
Jul 05 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
php简单静态页生成过程
2008/03/27 PHP
查找mysql字段中固定字符串并替换的几个方法
2012/09/23 PHP
浅析php变量修饰符static的使用
2013/06/28 PHP
Yii配置文件用法详解
2014/12/04 PHP
tp5.1框架数据库子查询操作实例分析
2020/05/26 PHP
javascript与asp.net(c#)互相调用方法
2009/12/13 Javascript
JavaScript自动设置IFrame高度的小例子
2013/06/08 Javascript
$.getJSON在IE下失效的原因分析及解决方法
2013/06/16 Javascript
JavaScript对内存分配及管理机制详细解析
2013/11/11 Javascript
javascript常用的方法分享
2015/07/01 Javascript
js模仿java的Map集合详解
2016/01/06 Javascript
Bootstrap被封装的弹层
2016/07/20 Javascript
Vue实现动态响应数据变化
2017/04/28 Javascript
深入理解Vue2.x的虚拟DOM diff原理
2017/09/27 Javascript
微信小程序 子级页面返回父级并把子级参数带回父级实现方法
2019/08/22 Javascript
Node.js开发之套接字(socket)编程入门示例
2019/11/05 Javascript
JavaScript的变量声明与声明提前用法实例分析
2019/11/26 Javascript
Python编程之string相关操作实例详解
2017/07/22 Python
python连接mongodb密码认证实例
2018/10/16 Python
python统计中文字符数量的两种方法
2019/01/31 Python
Python Selenium截图功能实现代码
2020/04/26 Python
如何利用python 读取配置文件
2021/01/06 Python
Vision Direct比利时:在线订购隐形眼镜
2019/08/27 全球购物
数控专业推荐信范文
2013/12/02 职场文书
高校辅导员推荐信范文
2013/12/25 职场文书
高三历史教学反思
2014/01/09 职场文书
探亲邀请信范文
2014/01/30 职场文书
怎样拟定创业计划书
2014/05/01 职场文书
银行优秀员工事迹材料
2014/05/29 职场文书
大专学生求职信
2014/07/04 职场文书
土地租赁意向书
2014/07/30 职场文书
在职人员跳槽求职信
2015/03/20 职场文书
防卫过当辩护词
2015/05/21 职场文书
2016年第104个国际护士节活动总结
2016/04/06 职场文书
ORACLE查看当前账号的相关信息
2021/06/18 Oracle
关于PHP数组迭代器的使用方法实例
2021/11/17 PHP