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 EasyUI 使用介绍
Apr 01 Javascript
JS 非图片动态loading效果实现代码
Apr 09 Javascript
JavaScript中的运算符种类及其规则介绍
Sep 26 Javascript
ie8模式下click无反应点击option无反应的解决方法
Oct 11 Javascript
Javascript中实现String.startsWith和endsWith方法
Jun 10 Javascript
Bootstrap实现水平排列的表单
Jul 04 Javascript
Bootstrap模态框(Modal)实现过渡效果
Mar 17 Javascript
详解Vue用axios发送post请求自动set cookie
May 10 Javascript
表格展示利器 Bootstrap Table实例代码
Sep 06 Javascript
LayUi中接口传数据成功,表格不显示数据的解决方法
Aug 19 Javascript
JavaScript闭包与作用域链实例分析
Jan 21 Javascript
JS实现密码框效果
Sep 10 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的网址
2006/11/25 PHP
PHP编写登录验证码功能 附调用方法
2016/05/19 PHP
js基于qrcode.js生成二维码的方法【附demo插件源码下载】
2016/12/28 PHP
php+ajax 文件上传代码实例
2019/03/18 PHP
apache集成php7.3.5的详细步骤
2019/06/20 PHP
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
2008/08/14 Javascript
一个基于jquery的文本框记数器
2012/09/19 Javascript
禁止选中文字兼容IE、Chrome、FF等
2013/09/04 Javascript
js onload事件不起作用示例分析
2013/10/09 Javascript
JavaScript对象的property属性详解
2014/04/01 Javascript
自己封装的javascript事件队列函数版
2014/06/12 Javascript
深入理解JavaScript系列(40):设计模式之组合模式详解
2015/03/04 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
Javascript刷新窗口方法小结
2015/10/21 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
微信小程序 video组件详解
2016/10/25 Javascript
Angular在模板驱动表单中自定义校验器的方法
2017/08/09 Javascript
AngularJS实现图片上传和预览功能的方法分析
2017/11/08 Javascript
微信小程序ajax实现请求服务器数据及模版遍历数据功能示例
2017/12/15 Javascript
postman+json+springmvc测试批量添加实例
2018/03/31 Javascript
extract-text-webpack-plugin用法详解
2019/02/14 Javascript
layui异步加载table表中某一列数据的例子
2019/09/16 Javascript
js+canvas实现转盘效果(两个版本)
2020/09/13 Javascript
Python中还原JavaScript的escape函数编码后字符串的方法
2014/08/22 Python
python实现在sqlite动态创建表的方法
2015/05/08 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
关于pycharm中pip版本10.0无法使用的解决办法
2019/10/10 Python
Pycharm 2019 破解激活方法图文详解
2019/10/11 Python
马来西亚奢侈品牌购物商城:Valiram 247
2020/09/29 全球购物
Ajxa常见问题都有哪些
2014/03/26 面试题
会计专业求职信
2014/08/10 职场文书
党的群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
驾驶员管理制度范本
2015/08/06 职场文书
班主任班级管理心得体会
2016/01/07 职场文书
Go 实现英尺和米的简单单位换算方式
2021/04/29 Golang
Python中的np.argmin()和np.argmax()函数用法
2021/06/02 Python