js检测数据类型的方法你都掌握了几个?
数据类型检测
typeof检测
var obg = {};
var ary = [];
var reg = /^$/;
var fn = function () {};
var num = 1;
var bool = true;
var nul = null;
var undef = undefined;
var str = "";
console.log(typeof obg);//"object"
console.log(typeof ary);//"object"
console.log(typeof num);//"number"
console.log(typeof reg);//"object"
console.log(typeof fn);//"function"
console.log(typeof bool);//"boolean"
console.log(typeof nul);//"object"
console.log(typeof undef);//"undefined"
console.log(typeof str);//"string"*/
typrof不能具体细分是正则、数组、null、对象,因为用typeof检测的时候结果都是"object" 2、instanceof检测,只要在实例的原型链上检测出来的结果都是true
var num = 1;字面量方式创建
console.log( 1 instanceof Number); ->false
var num = new Number(1);实例方式创建
console.log( num instanceof Number);->true
var ary = [];
console.log(ary instanceof Array);->true
console.log(ary instanceof Object);->true
var fn = function () {};
console.log(fn instanceof Function);->true
console.log(fn instanceof Object);->true
var num = 1;字面量方式创建
console.log( 1 instanceof Number); ->false
var num = new Number(1);实例方式创建
console.log( num instanceof Number);->true
var ary = [];
console.log(ary instanceof Array);->true
console.log(ary instanceof Object);->true
var fn = function () {};
console.log(fn instanceof Function);->true
console.log(fn instanceof Object);->true
3、constructor 构造函数可以处理基本数据类型检测
var ary = [];
console.log( ary.constructor === Array);
var num = 1;
console.log(num.constructor === Number)
4、Object.prototype.toString.call最准确最常用的方法
var ary = [];
var reg = /^$/;
var fn = function () {};
var num = 1;
var bool = true;
console.log(Object.prototype.toString.call(ary));->[object Array]
console.log(Object.prototype.toString.call(reg));->[object RegExp]
console.log(Object.prototype.toString.call(fn));->[object Function]
console.log(Object.prototype.toString.call(num));->[object Number]
console.log(Object.prototype.toString.call(bool));->[object Boolean]
js检测数据类型的方法你都掌握了几个?的更多相关文章
- js检测数据类型四种办法
面试题中经常会考js数据类型检测,今天我来分享一下js中常用的四种方法判断数据类型,欢迎指点更正. 废话不多说,直入正题. 1.typeof console.log(typeof "&quo ...
- javascript 中检测数据类型的方法
typeof 检测数据类型 javascript 中检测数据类型有好几种,其中最简单的一种是 typeof 方式.typeof 方法返回的结果是一个字符串.typeof 的用法如下: typeof v ...
- js 判断数据类型的方法及实现
转载自 http://blog.csdn.net/xujiaxuliang/archive/2009/10/21/4708353.aspx null 与 undefined 区别: null 是js的 ...
- JS检测数据类型
如果你要判断的是基本数据类型或JavaScript内置对象,使用toString: 如果要判断的时自定义类型,请使用instanceof. 1.typeof typeof操作符返回的是类型字符串,它的 ...
- js中的数据类型,以及如何检测数据类型
基本数据类型:string,number,boolean,null,undefined,symbol 引用数据类型:object(array,function...) 常用的检测数据类型的方法一般有以 ...
- JS中检测数据类型的多种方法
面试当中经常会问到检测 js 的数据类型,我在工作当中也会用到这些方法.让我们一起走起!!! 首先给大家上一个案例 console.log(typeof "langshen"); ...
- JS中检测数据类型的四种方法
1.typeof 用来检测数据类型的运算符->typeof value->返回值首先是一个字符串,其次里面包含了对应的数据类型,例如:"number"."st ...
- js中判断对象数据类型的方法
对js中不同数据的布尔值类型总结:false:空字符串:null:undefined:0:NaN.true:除了上面的false的情况其他都为true: 如下: var o = { 'name':'l ...
- js中检测数据类型的几种方式
1.typeof 一元运算符,用来检测数据类型.只可以检测number,string,boolean,object,function,undefined. 对于基本数据类型是没有问题的,但是遇到引用数 ...
随机推荐
- JAVA文件的两种读取方法和三种写入方法
在使用java对文件进行读写操作时,有多种方法可以使用,但不同的方法有不同的性能. 此文对常用的读写方法进行了整理,以备不时之需. 1.文件的读取 主要介绍两种常用的读取方法.按行读取和按字符块读取. ...
- PHP SOCKET 编程
对TCP/IP.UDP.Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵.那么我想问: 什么是TCP/IP.UDP? Socket在哪里呢? Socket是什么呢? 你 ...
- 1.1.Core Data是什么(Core Data 应用程序实践指南)
Core Data是个框架,把数据当作对象来操作. 由Core Data提供的数据对象叫托管对象(managed objecgt),而Core Data 位于程序和持久化存储区之间. 托管对象模型里有 ...
- js模块化开发——require.js的用法
这个系列的第一部分和第二部分,介绍了Javascript模块原型和理论概念,今天介绍如何将它们用于实战. 我采用的是一个非常流行的库require.js. 一.为什么要用require.js? 最早的 ...
- delphi edit编辑框使用
Delphi编辑框Edit的用法 http://wenku.baidu.com/link?url=oKKm0VFBXexqiWt9ZNB8WxFGzwjJqRBM3ohrAy6GSMmOmwIzSWP ...
- swift 协议传值的实现
首先呢说下结构 一个ViewController 一个ModelViewController 在ModelViewController中定义了一个协议 这个逻辑 从第一个界面进入第二个界面 从第二个 ...
- XML之XPath操作
在学习XPath之前你应该对XML的节点,元素,属性,原子值(文本),处理指令,注释,根节点(文档节点),命名空间以及对节点间的关系如:父(Parent),子(Children),兄弟(Sibling ...
- Java泛型类型擦除导致的类型转换问题
初步结论:泛型类型转换不靠谱: 源码: package com.srie.testjava; public class TestClassDefine4<T> { public stati ...
- ubuntu更换内核版本
一 详细的使用方法见: http://www.xlgps.com/article/310954.html 二 补充: 1 需要删除旧的内核的方法: sudo apt-get remove linux- ...
- .Net程序员学用Oracle系列(11):系统函数(下)
1.聚合函数 1.1.COUNT 函数 1.2.SUM 函数 1.3.MAX 函数 1.4.MIN 函数 1.5.AVG 函数 2.ROWNUM 函数 2.1.ROWNUM 函数简介 2.2.利用 R ...