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获取IUSR_机器名和IWAM_机器名帐号的密码
Dec 06 Javascript
如何让页面在打开时自动刷新一次让图片全部显示
Dec 17 Javascript
Centos6.8下Node.js安装教程
May 12 Javascript
bootstrap paginator分页前后台用法示例
Jun 17 Javascript
vue绑定class与行间样式style详解
Aug 16 Javascript
解决vue 打包发布去#和页面空白的问题
Sep 04 Javascript
微信小程序使用swiper组件实现层叠轮播图
Nov 04 Javascript
原生JS检测CSS3动画是否结束的方法详解
Jan 27 Javascript
使用Vue.set()方法实现响应式修改数组数据步骤
Nov 09 Javascript
Angular如何由模板生成DOM树的方法
Dec 23 Javascript
JavaScript遍历数组的方法代码实例
Jan 14 Javascript
0基础学习前端开发的一些建议
Jul 14 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木马攻击防御之道
2008/03/24 PHP
使用PHP实现蜘蛛访问日志统计
2013/07/05 PHP
php防止sql注入示例分析和几种常见攻击正则表达式
2014/01/12 PHP
php+mysqli实现将数据库中一张表信息打印到表格里的方法
2015/01/28 PHP
php实现编辑和保存文件的方法
2015/07/20 PHP
PHP将字符串首字母大小写转换的实例
2017/01/21 PHP
PHP 实现 JSON 数据的编码和解码操作详解
2020/04/22 PHP
浅谈Javascript嵌套函数及闭包
2010/11/09 Javascript
JavaScript中的style.display属性操作
2013/03/27 Javascript
通过正则表达式实现表单验证是否为中文
2014/02/18 Javascript
js实现简单鼠标跟随效果的方法
2015/04/10 Javascript
Javascript设计模式理论与编程实战之简单工厂模式
2015/11/03 Javascript
浅析BootStrap栅格系统
2016/06/07 Javascript
bootstrapValidator表单验证插件学习
2016/12/30 Javascript
Vue.js 2.0窥探之Virtual DOM到底是什么?
2017/02/10 Javascript
nodejs个人博客开发第五步 分配数据
2017/04/12 NodeJs
Angular2开发环境搭建教程之VS Code
2017/12/15 Javascript
angularJs中跳转到指定的锚点实例($anchorScroll)
2018/08/31 Javascript
基于vue实现一个神奇的动态按钮效果
2019/05/15 Javascript
element中的$confirm的使用
2020/04/26 Javascript
jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】
2020/05/19 jQuery
vue使用openlayers实现移动点动画
2020/09/24 Javascript
解决Python内层for循环如何break出外层的循环的问题
2019/06/24 Python
python开发实例之Python的Twisted框架中Deferred对象的详细用法与实例
2020/03/19 Python
python3让print输出不换行的方法
2020/08/24 Python
html5教你做炫酷的碎片式图片切换 (canvas)
2017/07/28 HTML / CSS
中国第一家杂志折扣订阅网:杂志铺
2016/08/30 全球购物
卡西欧G-SHOCK英国官网: 防水防震手表
2018/01/08 全球购物
幼儿园长自我鉴定
2013/10/17 职场文书
初中化学教学反思
2014/01/23 职场文书
大学生职业生涯规划书参考模板
2014/03/05 职场文书
承诺书的格式范文
2014/03/28 职场文书
党校培训自我鉴定范文
2014/04/10 职场文书
师德师风演讲稿
2014/05/05 职场文书
领导干部查摆“四风”问题自我剖析材料思想汇报
2014/10/05 职场文书
Python实现位图分割的效果
2021/11/20 Python