typeof

typeof操作符返回一个字符串,表示未经计算的操作数的类型。 语法:

var num = a;
console.log(typeof (num));
或console.log(typeof num)
复制代码

typeof 可以返回的类型为:number、string、boolean、undefined、null、object、function还有新的symbol(详见MDN)

//以下数据由chrome浏览器得到,其他浏览器详细的请见MDN
//(网址:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/typeof)console.log(typeof (typeof 1) );//stringvar num = null ;
console.log(typeof num);//objectvar num = /s/ ;
console.log(typeof num);//objectvar num = "a" ;// "123"
console.log(typeof num);//stringvar num = a;
console.log(typeof (num));//报错var num = 123 ;
console.log(typeof num);//numbervar num = NaN;
console.log(typeof num);//numbervar num = undefined ;
console.log(typeof num);//undefinedvar num;
console.log(typeof num);//undefinedvar num =[1,3];
console.log(typeof num);//objectvar num = true;
console.log(typeof num);//booleanvar num = new Array();
console.log(typeof num);//objectvar num =function(){};
//var num =function;会报错
console.log(typeof num);//functionvar num =new Object();
console.log(typeof num);//objectfunction Person(name){this.name =name;}
var num = new Person();
console.log(typeof num);//objectfunction Person(name){
this.name =name;
}
var num = new Person();
console.log(typeof num.name);//undefinedfunction Person(name){this.name =name;}
var num = new Person("sadf");
//var num = new Person(123);-->number
console.log(typeof num.name);//string
复制代码

四则运算的值会返回什么值呢?


var num = 2+2;console.log(typeof num);//numbervar num = 2+"2";
console.log(typeof num);//stringvar num = 2*2;
console.log(typeof num);//numbervar num = 2*"2";
console.log(num);//4
console.log(typeof num);//numbervar num = 2*"a";
console.log( num);//NaN
console.log(typeof num);//number
复制代码

总结:

  • 运算符+是双目运算符,只要其中一个是string类型,表达式的值返回什么类型是一个String。

  • 对于其他的四则运算,只有其中一个是Number类型,表达式的值返回什么类型的是一个Number。

var num = parseFloat("a");
console.log(num);//NaN
console.log(typeof num);//numbervar num = parseInt("0.9");
console.log(num);//0
console.log(typeof num);//number
复制代码
  • 对于非法字符的情况通常会得NaN,parseInt(a)值为NaN, 即使1*NaN也还是NaN。

  • Number(参数)把任何类型转换成数值类型

  • parseInt(参数1,参数2)将字符串转换成整数,参数二不填时 默认是10(十进制)

  • parseFloat()将字符串转换成浮点数字

  • string(参数):可以将任何类型转换成字符串

  • Boolean()可以将任何类型的值转换成布尔值

[参考MDN:(typeof)] (developer.mozilla.org/zh-CN/docs/…)

转载于:https://juejin.im/post/5ca4c645e51d452e3a504435

你猜猜typeof (typeof 1) 会返回什么值(类型)?!相关推荐

  1. c#读取mysql返回的值类型_在C#中从MYSQL读取Mediumblob数据类型

    我在MYSQL Server中有一个数据库.有一个表,用于存储包含其信息的图像.该图像的数据类型为Mediumblob.我需要读取并存储在byte []中,但我不知道该怎么做.有人针对这种情况有解决方 ...

  2. javascript中的typeof返回值类型

    number,string,boolean,object,function,undefined 一.对于数字类型的操作数而言, typeof 返回的值是 number.比如说:typeof(1),返回 ...

  3. php 变量类型 typeof,typeof和instanceof的区别是什么

    typeof和instanceof的区别是:typeof的返回值是一个字符串,用来说明变量的数据类型:instanceof的返回值是布尔值,用于判断一个变量是否属于某个对象的实例. 比较typeof与 ...

  4. 方法的返回值类型是object_JavaScript中如何判断类型

    1. typeof typeof (整数/小数/自然对数Math.LN2/正无穷大数Infinity) ===> numbertypeof NaN ===> number typeof ( ...

  5. (转)C#进阶系列——WebApi 接口返回值不困惑:返回值类型详解

    原文链接:https://www.cnblogs.com/landeanfen/p/5501487.html 阅读目录 一.void无返回值 二.IHttpActionResult 1.Json(T ...

  6. c语言cross函数什么意思,通达信cross函数用法,通达信 filter函数 返回什么值

    Q1:通达信 filter函数 返回什么值 结果:返回一个逻辑真值,当逻辑条件为真时,如果在N周期内已真过,将当前真值置为0,即过滤. 下面网页上有详细讲解. http://www.chcj.net/ ...

  7. python参数类型限定_python限定方法参数类型、返回值类型、变量类型等|python3教程|python入门|python教程...

    https://www.xin3721.com/eschool/python.html typing模块的作用 自python3.5开始,PEP484为python引入了类型注解(type hints ...

  8. 魔术索引(返回索引值最小的一个)

    在数组A[0...n-1]中,有所谓的魔术索引,满足条件A[i] = i.给定一个有序整数数组,编写一种方法找出魔术索引,若有的话,在数组A中找出一个魔术索引,如果没有,则返回-1.若有多个魔术索引, ...

  9. Redis中有序集合zset数据类型(增加(添加元素)、获取(获取指定范围元素、返回权值在min和max之间的成员、返回成员member的score值)、删除(删除指定元素和指定权值范围的元素))

    sorted set,有序集合 元素为string类型 元素具有唯⼀性,不重复   [值不能重复] 每个元素都会关联⼀个double类型的score,表示权重,通过权重将元素从⼩到⼤排序 说明:没有修 ...

最新文章

  1. TaskManager
  2. 在Eclipse添加Android兼容包( v4、v7 appcompat )
  3. 电脑新手:一次了解电脑键盘上每个键的含义!
  4. 如何删除 eclipse 中多余的 Tomcat server?为什么产生这种 bug?
  5. Axure原型设计导出到PDF文件
  6. STL-queue.back()队尾误区
  7. 北师大c语言2019在线作业,华东石油《C语言》2019年春季学期在线作业(二)辅导答案...
  8. 【华为云技术分享】使用sqoop导入mysql数据到hive中
  9. .net 发送html邮件,c#利用system.net发送html格式邮件
  10. 数学建模-7.多元线性回归分析
  11. Flume-NG源码阅读之Interceptor(原创)
  12. Pytext简介:facebook的基于PyTorch的NLP框架
  13. hadoop mapper从源码开始 详解
  14. 唤醒屏幕_屏幕保护程序被困在Mac上?如何解决它
  15. java如何面试别人_Java面试如何考察候选人
  16. 微信小程序npm安装有赞UI 组件库
  17. Python爬虫实战|爬取视频
  18. 加班不能正常主张加班费的原因解析
  19. 一种获得深度睡眠的方法
  20. 教您如何查看Win7详细系统版本号

热门文章

  1. MFC给按钮添加皮肤
  2. 设计模式之访问者模式(Visitor)摘录
  3. Windows7在Eclipse中配置Python+OpenCV
  4. 【VirtualBox】VirtualBox使用现有的虚拟盘文件(如VHD)创建虚拟机时,报错:打开虚拟硬盘失败,“UUID already exist”的解决方法
  5. Ruby调用shell命令
  6. cad菜单栏快捷键_拒绝效率低下,教你瞬间提升10倍!老师傅珍藏多年CAD快捷键...
  7. arduino nano 蓝牙_探索 Golang 云原生游戏服务器开发,5 分钟上手 Nano 游戏服务器框架...
  8. Redis初学16:主从复制
  9. Java项目:日历万年历(java+swing)
  10. 云计算机机房怎么样,如何知道云电脑配置多少?怎么选择云电脑机房?