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 相关文章推荐
jQuery学习3:操作元素属性和特性
Feb 07 Javascript
Js判断CSS文件加载完毕的具体实现
Jan 17 Javascript
jquery使用经验小结
May 20 Javascript
JS实现的表格操作类详解(添加,删除,排序,上移,下移)
Dec 22 Javascript
js中scrollTop()方法和scroll()方法用法示例
Oct 03 Javascript
jQuery实现简单漂亮的Nav导航菜单效果
Mar 29 jQuery
jQuery实现的简单无刷新评论功能示例
Nov 08 jQuery
vue项目中,main.js,App.vue,index.html的调用方法
Sep 20 Javascript
angular 服务随记小结
May 06 Javascript
vue项目中引入vue-datepicker插件的详解
May 14 Javascript
vue2.0项目集成Cesium的实现方法
Jul 30 Javascript
jquery实现简单每周轮换的日历
Sep 10 jQuery
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使用者状态管理功能的应用
2006/10/09 PHP
使用sockets:从新闻组中获取文章(三)
2006/10/09 PHP
Laravel中使用自己编写类库的3种方法
2015/02/10 PHP
jQuery获取当前对象标签名称的方法
2014/02/07 Javascript
JS在IE下缺少标识符的错误
2014/07/23 Javascript
深入分析Cookie的安全性问题
2015/03/01 Javascript
JavaScript通过代码调用Flash显示的方法
2016/02/02 Javascript
bootstrap读书笔记之CSS组件(上)
2016/10/17 Javascript
JavaScript自定义文本框光标
2017/03/05 Javascript
基于AGS JS开发自定义贴图图层
2017/03/31 Javascript
Vue精简版风格指南(推荐)
2018/01/30 Javascript
vue elementUI tree树形控件获取父节点ID的实例
2018/09/12 Javascript
JavaScript中常用的简洁高级技巧总结
2019/03/10 Javascript
[01:04:48]VGJ.S vs TNC Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
python获取当前时间对应unix时间戳的方法
2015/05/15 Python
python 读取excel文件生成sql文件实例详解
2017/05/12 Python
Python中 传递值 和 传递引用 的区别解析
2018/02/22 Python
python pandas中DataFrame类型数据操作函数的方法
2018/04/08 Python
python实现支付宝当面付(扫码支付)功能
2018/05/30 Python
python递归全排列实现方法
2018/08/18 Python
Python3非对称加密算法RSA实例详解
2018/12/06 Python
python获取栅格点和面值的实现
2020/03/10 Python
python 实现任务管理清单案例
2020/04/25 Python
基于SpringBoot构造器注入循环依赖及解决方式
2020/04/26 Python
python 深度学习中的4种激活函数
2020/09/18 Python
深入浅析HTML5中的SVG
2015/11/27 HTML / CSS
HTML5 WebSocket实现点对点聊天的示例代码
2018/01/31 HTML / CSS
DataList 能否分页,请问如何实现?
2015/05/03 面试题
专营店会计助理岗位职责
2013/11/29 职场文书
国际贸易专业个人鉴定
2014/02/22 职场文书
2014财务年终工作总结
2014/12/08 职场文书
好媳妇事迹材料
2014/12/24 职场文书
股东大会通知
2015/04/24 职场文书
2016春季田径运动会广播稿
2015/12/21 职场文书
Python代码,能玩30多款童年游戏!这些有几个是你玩过的
2021/04/27 Python
Redis配置外网可访问(redis远程连接不上)的方法
2022/12/24 Redis