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 相关文章推荐
利用javascript查看html源文件
Nov 08 Javascript
Jquery 获得服务器控件值的方法小结
May 11 Javascript
JS实现仿百度输入框自动匹配功能的示例代码
Feb 19 Javascript
js中定义一个变量并判断其是否为空的方法
May 13 Javascript
实现前后端数据交互方法汇总
Apr 07 Javascript
浅谈jQuery页面的滚动位置scrollTop、scrollLeft
May 19 Javascript
分享我对JS插件开发的一些感想和心得
Feb 04 Javascript
vue Render中slots的使用的实例代码
Jul 19 Javascript
微信小程序支付及退款流程详解
Nov 30 Javascript
Vue render深入开发讲解
Apr 13 Javascript
详解webpack之图片引入-增强的file-loader:url-loader
Oct 08 Javascript
Postman内建变量常用方法实例解析
Jul 28 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 mysql Errcode: 28 终极解决方法
2009/07/01 PHP
PHP扩展编写点滴 技巧收集
2010/03/09 PHP
Laravel 5框架学习之日期,Mutator 和 Scope
2015/04/08 PHP
PHP配置ZendOpcache插件加速
2019/02/14 PHP
laravel与thinkphp之间的区别与优缺点
2021/03/02 PHP
jquery遍历数组与筛选数组的方法
2013/11/05 Javascript
原生JS实现LOADING效果
2015/03/16 Javascript
javascript实时显示当天日期的方法
2015/05/20 Javascript
Jquery Mobile 自定义按钮图标
2015/11/18 Javascript
jQuery实现简单滚动动画效果
2016/04/07 Javascript
BootStrap点击下拉菜单项后显示一个新的输入框实现代码
2016/05/16 Javascript
JSON字符串和对象相互转换实例分析
2016/06/16 Javascript
javascript之with的使用(阿里云、淘宝使用代码分析)
2016/10/11 Javascript
基于angular实现三级联动的生日插件
2017/05/12 Javascript
Vue.js 父子组件通信的十种方式
2018/10/30 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
2020/08/14 Javascript
python连接sql server乱码的解决方法
2013/01/28 Python
Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)
2017/07/06 Python
深入浅析Python中的yield关键字
2018/01/24 Python
使用python中的in ,not in来检查元素是不是在列表中的方法
2018/07/06 Python
Pandas 数据处理,数据清洗详解
2018/07/10 Python
用python爬取历史天气数据的方法示例
2019/12/30 Python
Django的CVB实例详解
2020/02/10 Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
2020/05/22 Python
基于SQLAlchemy实现操作MySQL并执行原生sql语句
2020/06/10 Python
html5 datalist标签使用示例(自动完成组件)
2014/05/04 HTML / CSS
白色公司:The White Company
2017/10/11 全球购物
舞会礼服和舞会鞋:PromGirl
2019/04/22 全球购物
绘画设计学生的个人自我评价
2013/09/20 职场文书
机械设计职业生涯规划书
2013/12/27 职场文书
部队学习十八大感言
2014/01/11 职场文书
挂职自我鉴定
2014/02/26 职场文书
装修协议书范本
2014/04/21 职场文书
《槐乡的孩子》教学反思
2016/02/20 职场文书
CSS3实现列表无限滚动/轮播效果
2021/06/23 HTML / CSS
MySQL系列之八 MySQL服务器变量
2021/07/02 MySQL