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 相关文章推荐
jQuery实现的Div窗口震动特效
Jun 09 Javascript
js实现拉幕效果的广告代码
Sep 02 Javascript
JavaScript中数组去除重复的三种方法
Apr 22 Javascript
浅谈js中子页面父页面方法 变量相互调用
Aug 04 Javascript
JavaScript中apply方法的应用技巧小结
Sep 29 Javascript
微信公众号-获取用户信息(网页授权获取)实现步骤
Oct 21 Javascript
AngularJS中isolate scope的用法分析
Nov 22 Javascript
js使用Replace结合正则替换重复出现的字符串功能示例
Dec 27 Javascript
详解Nuxt.js Vue服务端渲染摸索
Feb 08 Javascript
vue实现简单的星级评分组件源码
Nov 16 Javascript
详解如何为你的angular app构建一个第三方库
Dec 07 Javascript
layer 关闭指定弹出层的例子
Sep 25 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
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
2010/05/04 PHP
wamp下修改mysql访问密码的解决方法
2013/05/07 PHP
CodeIgniter生成网站sitemap地图的方法
2013/11/13 PHP
Yii Framework框架获取分类下面的所有子类方法
2014/06/20 PHP
php使用include 和require引入文件的区别
2017/02/16 PHP
php四种定界符详解
2017/02/16 PHP
PHP实现用户登录的案例代码
2018/05/10 PHP
javascript 面向对象编程 万物皆对象
2009/09/17 Javascript
javascript控制层显示或隐藏的方法
2015/07/22 Javascript
JavaScript之promise_动力节点Java学院整理
2017/07/03 Javascript
node.js基于express使用websocket的方法
2017/11/09 Javascript
jQuery实现验证表单密码一致性及正则表达式验证邮箱、手机号的方法
2017/12/05 jQuery
基于Vue实现微信小程序的图文编辑器
2018/07/25 Javascript
JavaScript实用代码小技巧
2018/08/23 Javascript
基于Vue实现微前端的示例代码
2020/04/24 Javascript
[06:21]2014DOTA2国际邀请赛 庆祝VG首阶段领跑;B叔为挣牛排半夜整理情报
2014/07/13 DOTA
[15:41]教你分分钟做大人——灰烬之灵
2015/03/11 DOTA
python元组操作实例解析
2014/09/23 Python
跟老齐学Python之大话题小函数(1)
2014/10/10 Python
Python中使用不同编码读写txt文件详解
2015/05/28 Python
Python的爬虫框架scrapy用21行代码写一个爬虫
2017/04/24 Python
Python 通过pip安装Django详细介绍
2017/04/28 Python
Win10下python3.5和python2.7环境变量配置教程
2018/09/18 Python
深入浅析Python科学计算库Scipy及安装步骤
2019/10/12 Python
Python使用xpath实现图片爬取
2020/09/16 Python
Skyscanner英国:苏格兰的全球三大领先航班搜索服务之一
2017/11/09 全球购物
ROSEFIELD手表荷兰官方网上商店:北欧极简设计女士腕表品牌
2018/01/24 全球购物
微软加拿大官方网站:Microsoft Canada
2019/04/28 全球购物
英国马莎百货印度官网:Marks & Spencer印度
2020/10/08 全球购物
教师师德教育的自我评价
2013/10/31 职场文书
经典优秀毕业生求职信范文分享
2013/12/18 职场文书
大学生职业规划前言模板
2013/12/27 职场文书
餐饮收银员岗位职责
2014/02/07 职场文书
行政人事主管岗位职责
2015/04/11 职场文书
2016年教师政治思想表现评语
2015/12/02 职场文书
Python OpenGL基本配置方式
2022/05/20 Python