JS 中 判断数据类型 typeof详解
typeof 可用来获取检测变量的数据类型
语法
typeof operand
typeof(operand)
参数
operand
一个表示对象或原始值的表达式,其类型将被返回。
描述
下表总结了 typeof
可能的返回值。有关类型和原始值的更多信息,可查看
类型 | 结果 |
---|---|
Undefined | "undefined" |
Null | "object" (见下文) |
Boolean | "boolean" |
Number | "number" |
BigInt | "bigint" |
String | "string" |
Symbol (ECMAScript 2015 新增) | "symbol" |
宿主对象(由 JS 环境提供) | 取决于具体实现 |
Function 对象 (按照 ECMA-262 规范实现 [[Call]]) | "function" |
其他任何对象 | "object" |
- // 数值 number
- console.log(typeof 37);
- console.log(typeof 3.14);
- console.log(typeof(42));
- console.log(typeof Math.LN2);
- console.log(typeof Infinity);
- console.log(typeof Number(1)); //Number()函数 会尝试把参数解析成数值
- console.log(typeof NaN); //尽管它是 "Not-A-Number" (非数值) 的缩写
- // 字符串 string
- console.log(typeof '');
- console.log(typeof 'bla');
- console.log(typeof `template literal`);
- console.log(typeof '1'); //注意内容为数字的字符串仍是字符串
- console.log(typeof(typeof 1)); //总是返回一个字符串
- console.log(typeof String(1)); //String() 函数把对象的值转换为字符串 将任意值转换为字符串,比 toString 更安全
- // 布尔值 boolean
- console.log(typeof true);
- console.log(typeof false);
- console.log(typeof Boolean(1)); //Boolean() 会基于参数是真值还是虚值进行转换
- console.log(typeof !!(1)); //两次调用 ! (逻辑非) 操作符相当于 Boolean()
- // Symbols symbols
- console.log(typeof Symbol());
- console.log(typeof Symbol('foo'));
- console.log(typeof Symbol.iterator);
- console.log("-----------------------------------------");
- // Undefined undefined
- console.log(typeof undefined);
- console.log(typeof declaredButUndefinedVariable);
- console.log(typeof undeclaredVariable);
- // 对象 object
- console.log(typeof {
- a: 1
- });
- console.log(typeof [1, 2, 4]);
- console.log(typeof new Date());
- console.log(typeof /regex/); // 历史结果请参阅正则表达式部分
- console.log("-----------------------------------------");
- // 函数 function
- console.log(typeof
- function() {});
- console.log(typeof class C {});
- console.log(typeof Math.sin);
null
// JavaScript 诞生以来便如此
typeof null === 'object';
- 使用 new 操作符
- // 除 Function 外的所有构造函数的类型都是 'object'
- var str = new String('String');
- var num = new Number(100);
- typeof str; // 返回 'object'
- typeof num; // 返回 'object'
- var func = new Function();
- typeof func; // 返回 'function'
语法中的括号
- // 括号有无将决定表达式的类型。
- var iData = 99;
- typeof iData + ' Wisen'; // 'number Wisen'
- typeof (iData + ' Wisen'); // 'string'
JS 中 判断数据类型 typeof详解的更多相关文章
- js中判断数据类型的四种方法总结
js中判断数据类型的四种方法 前言 在js中,我们经常需要判断数据的类型,那么哪些方法可以用来判断数据的类型呢?哪种方法判断数据类型最准确呢? 我们来一个个分析: 1.typeof typeof是一个 ...
- JS中的event 对象详解
JS中的event 对象详解 JS的event对象 Event属性和方法:1. type:事件的类型,如onlick中的click:2. srcElement/target:事件源,就是发生事件的 ...
- js中鼠标滚轮事件详解
js中鼠标滚轮事件详解 (以下内容部分内容参考了http://adomas.org/javascript-mouse-wheel/ ) 之前js 仿Photoshop鼠标滚轮控制输入框取值中已使用 ...
- js中中括号,大括号使用详解
js中中括号,大括号使用详解 一.总结 一句话总结:{ } 是一个对象,[ ] 是一个数组 1.js大括号{}表示什么意思? 对象 { } 大括号,表示定义一个对象,大部分情况下要有成对的属性和值,或 ...
- JS中判断数据类型的几种方法
1⃣️首先我们来了解一下js中的数据类型 1.基本数据类型:Undefined.Null.Boolean.Number.String(值类型) 2.复杂数据类型:Object(引用类型) (值类型和引 ...
- js入门 关于js属性及其数据类型(详解)
1. js的本质就是处理数据.数据来自于后台的数据库. 所以变量就起到一个临时存储数据的作用. ECMAScript制定了js的数据类型. 数据类型有哪些? 1. 字符串 String 2. 数字 ...
- js中判断数据类型的4中方法
注意: js中数据类型有7种(number, boolean, string, null, undefined, object, Symbol(es6新增)) 原始数据类型: number, stri ...
- JS中的this对象详解
JS中this关键字很常见,但是它似乎变幻莫测,让人抓狂.这篇文章就来揭示其中的奥秘. 借助阮一峰老师的话:它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.这句话看似平常,可是要非常注意 ...
- JS中的this用法详解
随着对js的深入学习和使用,你会发现它里面包含了很多令人困惑的机制,比如对象.闭包.原型链继承等等,而这其中肯定包含令你现在或者曾经费解的this,如果你不把心一横,花点时间还真不明白这个this的用 ...
随机推荐
- AttributeError: 'unicode' object has no attribute 'tzinfo' 未解决
Internal Server Error: /demo/machineinfo.htmlTraceback (most recent call last): File "C:\Python ...
- js中scroll滚动相关
js中scroll滚动相关 scroll,滚动,一般讨论的是网页整体与浏览器之间的关系. 一.元素相关 属性/方法 解释 element.scrollHeight 返回元素的整体高度. element ...
- kvm2
kvm虚拟机的桥接网络 默认的虚拟机网络是NAT模式,网段192.168.122.0/24 1:创建桥接网卡 创建桥接网卡命令 virsh iface-bridge eth0 br0 取消桥接网卡命令 ...
- SpringBoot(十二):SpringBoot整合Mybatis-Plus
本节版本虽然只用到了基本特性,但可以满足大部分的增删改查. 一.环境准备SpringBoot 1.5.10.RELEASEMybatis-Plus 2.1.9Mybatis-Plus 官方地址:htt ...
- The Preliminary Contest for ICPC Asia Shenyang 2019
传送门 B. Dudu's maze 题意: 是什么鬼东西???我读题可以读半小时QAQ 给出一张无向图,一个人在里面收集糖果,每个点都有一个糖果,特殊点除外.当他第一次进入特殊点时,会随机往一条边走 ...
- day83_11_1 阿里配python使用。
一.环境准备. 1.首先需要在支付包中注册开发者模式,并注册沙箱,模拟支付过程. https://openhome.alipay.com/platform/appDaily.htm?tab=info ...
- day87_11_7微信小程序之登录,支付(获取ip,requests使用),授权
一.登录接口. 官方文档https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html 在登录接口 ...
- Java入门程序HelloWorld
程序开发步骤说明 开发环境已经搭建完毕,可以开发我们第一个Java程序了.Java程序开发三步骤:编写.编译.运行.如下图所示 详解: 编写源程序:通俗来说就是我们通过Java的语法自己写的代码 编译 ...
- HTML网页自动跳转(重定向)
HTML网页自动跳转(重定向) meta <head> <meta http-equiv="refresh" content="5;url=https: ...
- WPF 精修篇 数据绑定 更新通知
原文:WPF 精修篇 数据绑定 更新通知 开始更新一点有意思的了 首先 数据绑定 其中之一 Element 绑定 看例子 <Window x:Class="WpfApplicatio ...