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 相关文章推荐
jsTree 基于JQuery的排序节点 Bug
Jul 26 Javascript
JQuery获取各种宽度、高度(format函数)实例
Mar 04 Javascript
javascript实现2048游戏示例
May 04 Javascript
JavaScript Window浏览器对象模型方法与属性汇总
Apr 20 Javascript
解决jQuery上传插件Uploadify出现Http Error 302错误的方法
Dec 18 Javascript
前端性能优化及技巧
May 06 Javascript
AngularJS ng-style中使用filter
Sep 21 Javascript
详解JavaScript跨域总结与解决办法
Oct 31 Javascript
JS对大量数据进行多重过滤的方法
Nov 04 Javascript
详解Vue实战指南之依赖注入(provide/inject)
Nov 13 Javascript
Vue 引入AMap高德地图的实现代码
Apr 29 Javascript
UEditor 自定义图片视频尺寸校验功能的实现代码
Oct 20 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垃圾代码优化操作代码
2010/08/05 PHP
PHP连接MySQL的2种方法小结以及防止乱码
2014/03/11 PHP
php多文件打包下载的实例代码
2017/07/12 PHP
PDO::quote讲解
2019/01/29 PHP
php设计模式之职责链模式定义与用法经典示例
2019/09/19 PHP
实现png图片和png背景透明(支持多浏览器)的方法
2009/09/08 Javascript
Javascript this 的一些学习总结
2012/08/31 Javascript
js将字符串转成正则表达式的实现方法
2013/11/13 Javascript
如何实现JavaScript动态加载CSS和JS文件
2020/12/28 Javascript
jQuery实现监控页面所有ajax请求的方法
2015/12/10 Javascript
javascript实现列表切换效果
2016/05/02 Javascript
关于JS变量和作用域详解
2016/07/28 Javascript
几种二级联动案例(jQuery\Array\Ajax php)
2016/08/13 Javascript
浅析JavaScript中作用域和作用域链
2016/12/06 Javascript
微信小程序 生命周期和页面的生命周期详细介绍
2017/01/19 Javascript
原生js开发的日历插件
2017/02/04 Javascript
Angular企业级开发——MVC之控制器详解
2017/02/20 Javascript
JavaScript笛卡尔积超简单实现算法示例
2018/07/30 Javascript
vue-cli 3.x 配置Axios(proxyTable)跨域代理方法
2018/09/19 Javascript
浅谈TypeScript 用 Webpack/ts-node 运行的配置记录
2019/10/11 Javascript
vue-drag-chart 拖动/缩放图表组件的实例代码
2020/04/10 Javascript
el-form 多层级表单的实现示例
2020/09/10 Javascript
[51:17]VGJ.T vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python实现解析Bit Torrent种子文件内容的方法
2017/08/29 Python
Django 使用easy_thumbnails压缩上传的图片方法
2019/07/26 Python
PyTorch加载预训练模型实例(pretrained)
2020/01/17 Python
火山咖啡:Volcanica Coffee
2019/10/29 全球购物
DC Shoes俄罗斯官网:美国滑板鞋和服饰品牌
2020/08/19 全球购物
收银员的岗位职责范本
2014/02/04 职场文书
空中乘务员岗位职责
2014/03/08 职场文书
销售队伍口号
2014/06/11 职场文书
幼儿园安全责任书范本
2014/07/24 职场文书
3招让你摆脱即兴讲话冷场尴尬
2019/08/08 职场文书
MySQL不使用order by实现排名的三种思路总结
2021/06/02 MySQL
mysql中between的边界,范围说明
2021/06/08 MySQL
html解决浏览器记住密码输入框的问题
2023/05/07 HTML / CSS