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 相关文章推荐
JavaScript开发时的五个注意事项
Dec 08 Javascript
jquery photoFrame 图片边框美化显示插件
Jun 28 Javascript
JavaScript中document.forms[0]与getElementByName区别
Jan 21 Javascript
javascript实现链接单选效果的方法
May 13 Javascript
js获取鼠标位置实例详解
Dec 09 Javascript
HTML页面,测试JS对C函数的调用简单实例
Aug 09 Javascript
详谈js使用in和hasOwnProperty获取对象属性的区别
Apr 25 Javascript
谈谈对vue响应式数据更新的误解
Aug 01 Javascript
小程序实现列表点赞功能
Nov 02 Javascript
Vue多组件仓库开发与发布详解
Feb 28 Javascript
微信小程序实现菜单左右联动
May 19 Javascript
js实现购物车商品数量加减
Sep 21 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里得到前天和昨天的日期的代码
2007/08/16 PHP
php下图片文字混合水印与缩略图实现代码
2009/12/11 PHP
PHP之APC缓存详细介绍 apc模块安装
2014/01/13 PHP
PHP同时连接多个mysql数据库示例代码
2014/03/17 PHP
php备份数据库类分享
2015/04/14 PHP
一个原生的用户等级的进度条
2010/07/03 Javascript
javascript 内存回收机制理解
2011/01/17 Javascript
Javascript合并表格中具有相同内容单元格示例
2013/08/11 Javascript
node.js中的fs.chmodSync方法使用说明
2014/12/18 Javascript
JavaScript使用Replace进行字符串替换的方法
2015/04/14 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
2016/06/14 Javascript
Node.js  REPL (交互式解释器)实例详解
2017/08/06 Javascript
IScroll5实现下拉刷新上拉加载的功能实例
2017/08/11 Javascript
vue 2.1.3 实时显示当前时间,每秒更新的方法
2018/09/16 Javascript
ES6知识点整理之函数数组参数的默认值及其解构应用示例
2019/04/17 Javascript
JS合并两个数组的3种方法详解
2019/10/24 Javascript
LayUi数据表格自定义赋值方式
2019/10/26 Javascript
[42:52]IG vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python for Informatics 第11章 正则表达式(一)
2016/04/21 Python
浅谈解除装饰器作用(python3新增)
2018/10/15 Python
python重试装饰器的简单实现方法
2019/01/31 Python
python tkinter canvas 显示图片的示例
2019/06/13 Python
浅谈Pytorch中的torch.gather函数的含义
2019/08/18 Python
关于pandas的离散化,面元划分详解
2019/11/22 Python
Python制作简易版小工具之计算天数的实现思路
2020/02/13 Python
如何基于Python pygame实现动画跑马灯
2020/11/18 Python
html5 分层屏幕适配的方法
2018/03/16 HTML / CSS
阿迪达斯比利时官方商城:adidas比利时
2016/10/10 全球购物
德国药房apodiscounter中文官网:德国排名前三的网上药店
2019/06/03 全球购物
纽约市的奢华内衣目的地:Anya Lust
2019/08/02 全球购物
50道外企软件测试面试题
2014/08/18 面试题
2014年干部作风建设总结
2014/10/23 职场文书
合同审查法律意见书
2015/06/04 职场文书
中小学生安全教育观后感
2015/06/17 职场文书
导游词之山西-五老峰
2019/10/07 职场文书
详解Vue的sync修饰符
2021/05/15 Vue.js