JavaScript中的typeof操作符用法实例


Posted in Javascript onApril 05, 2014

对一个值使用typeof操作符可能返回下列某个字符串:
“undefined”——如果这个值未定义
“boolean”——如果这个值是布尔值
“string”——如果这个值是字符串
“number”——如果这个值是数值
“object”——如果这个是对象或null
“function”——如果这个值是函数

常用的typeof操作符的返回值包括number、string、boolean、undefined 、object和function。如:

var n;
console.log(typeof n); // "undefined"n = 1;
console.log(typeof n); // "number"
n = "1";
console.log(typeof n); // "string"
n = false;
console.log(typeof n); // "boolean"
n = { name: "obj" };
console.log(typeof n); // "object"
n = new Number(5);
console.log(typeof n); // "object"
n = function() { return; };
console.log(typeof n); // "function"

这几个例子说明,typeof操作符的操作数可以是变量(message),也可以是数值字面量。注意,typeof是一个操作符而不是函数,因此例子中的圆括号不是必须的(尽管可以使用)。

从上面的例子中,我们发现用Number()创建的数字也会被typeof判定为对象而返回值“object”,这是因为构造函数返回的都是对象,那么如果我们想要区分数字对象(Number)、字符串对象(String)、数组对象(Array)、Function对象、日起对象(Date)、布尔对象(Boolean)以及错误对象(Error)等JavaScript内置对象时,怎么办呢?在这里可以调用对象的toString方法,如:

var n, res;n = new Number(66);
res = Object.prototype.toString.call(n);
console.log(res); // "[object Number]"
n = new String("string");
res = Object.prototype.toString.call(n);
console.log(res); // "[object String]"
n = [];
res = Object.prototype.toString.call(n);
console.log(res); // "[object Array]"
// ...
Javascript 相关文章推荐
js改变文章字体大小的实例代码
Nov 27 Javascript
简介JavaScript中setUTCSeconds()方法的使用
Jun 12 Javascript
简单的JS时钟实例讲解
Jan 13 Javascript
基于jquery实现最简单的选项卡切换效果
May 08 Javascript
Angular.Js之Scope作用域的学习教程
Apr 27 Javascript
Angular中响应式表单的三种更新值方法详析
Aug 22 Javascript
利用JS实现一个同Excel表现的智能填充算法
Aug 13 Javascript
Angular6 Filter实现页面搜索的示例代码
Dec 02 Javascript
详解微信UnionID作用
May 15 Javascript
vue框架中props的typescript用法详解
Feb 17 Javascript
vue2路由方式--嵌套路由实现方法分析
Mar 06 Javascript
VUE异步更新DOM - 用$nextTick解决DOM视图的问题
Nov 06 Javascript
Javascript排序算法之计数排序的实例
Apr 05 #Javascript
JavaScript中的正则表达式简明总结
Apr 04 #Javascript
JavaScript格式化日期时间的方法和自定义格式化函数示例
Apr 04 #Javascript
Javascript排序算法之合并排序(归并排序)的2个例子
Apr 04 #Javascript
JQuery记住用户名和密码的具体实现
Apr 04 #Javascript
JS根据变量保存方法名并执行方法示例
Apr 04 #Javascript
JavaScript制作的可折叠弹出式菜单示例
Apr 04 #Javascript
You might like
php csv操作类代码
2009/12/14 PHP
上传文件先创建目录 再上传到目录里面去
2010/12/29 PHP
php 文章调用类代码
2011/08/11 PHP
解析php中获取url与物理路径的总结
2013/06/21 PHP
php读取mssql的ntext字段返回值为空的解决方法
2014/12/30 PHP
PHP记录和读取JSON格式日志文件
2016/07/07 PHP
php制作基于xml的RSS订阅源功能示例
2017/02/08 PHP
Thinkphp实现站点静态化的方法详解
2017/03/21 PHP
PHP进阶学习之类的自动加载机制原理分析
2019/06/18 PHP
用JavaScript实现UrlEncode和UrlDecode的脚本代码
2008/07/23 Javascript
Javascript 判断客户端浏览器类型代码
2010/03/01 Javascript
动态载入/删除/更新外部 JavaScript/Css 文件的代码
2010/07/03 Javascript
仅IE9/10同时支持script元素的onload和onreadystatechange事件分析
2011/04/27 Javascript
基于jquery的时间段实现代码
2012/08/02 Javascript
谈谈我对JavaScript中typeof和instanceof的深入理解
2015/12/25 Javascript
vue.js 表格分页ajax 异步加载数据
2016/10/18 Javascript
基于JavaScript实现的顺序查找算法示例
2017/04/14 Javascript
javascript面向对象三大特征之继承实例详解
2019/07/24 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
Python+tkinter使用40行代码实现计算器功能
2018/01/30 Python
Python实现简单的文本相似度分析操作详解
2018/06/16 Python
浅谈python3.6的tkinter运行问题
2019/02/22 Python
python简单实现矩阵的乘,加,转置和逆运算示例
2019/07/10 Python
Python基于pip实现离线打包过程详解
2020/05/15 Python
python转化excel数字日期为标准日期操作
2020/07/14 Python
Windows下PyCharm配置Anaconda环境(超详细教程)
2020/07/31 Python
Python3.9.1中使用split()的处理方法(推荐)
2021/02/07 Python
美国特价机票专家:Airfarewatchdog
2018/01/24 全球购物
中学生在校期间的自我评价分享
2013/11/13 职场文书
《分一分》教学反思
2014/04/13 职场文书
入党函调证明材料
2014/12/24 职场文书
社会实践活动总结
2015/02/05 职场文书
《金钱的魔力》教学反思
2016/02/20 职场文书
《乘法分配律》教学反思
2016/02/24 职场文书
MySQL系列之三 基础篇
2021/07/02 MySQL