判断JavaScript值的类型可以用typeof和instanceof

var a = 3;
typeof a; //number

//typeof null返回是Object,这是一个历史原因,所以typeof无法安全判断引用类型
//mdn的说法是instanceof运算符用于测试构造函数的prototype属性是否出现在对象的原型链中的任何位置,直白的说是使用instanceof就是判断一个实例是否属于某种类型(instanceof检测对象的原型链)
var Po = function(){}
var pww = new Po();
pww instanceof Po; // ture

//instanceof有个常见用法可以在继承关系中用来判断一个实例是否属于它的父类型
function Aoo(){}
function Foo(){}
Foo.prototype = new Aoo();//JavaScript 原型继承

var foo = new Foo();
console.log(foo instanceof Foo)//true
console.log(foo instanceof Aoo)//true

更多了解instanceof

更多了解typeof

原文地址:https://www.cnblogs.com/yiquan/p/10203618.html

时间: 2024-08-10 04:34:13

判断JavaScript值的类型可以用typeof和instanceof的相关文章

如何判断JavaScript数据具体类型

昨晚做了阿里的题目,让我写一个函数,可以判断数据的具体类型.其实题目很简单的...但是真的是自己不太注意吧,写的很糟糕啊. 然后今天就自己写了一个,然后又到晚上搜了下,看看别人的写法,结果发现自己有点思维受限啊,不够开阔啊,那些方法其实都是见过的,可能是自己没有梳理过,或者认真对待.今天就把这些方法整理一下. 1.基本数据类型采用typeof,这个返回的都是很准的. var a = "iamstring."; var b = 222; var c= [1,2,3]; var e = f

javascript 中 typeof 和 instanceof 的区别

在 javascript 中经常会用到 typeof 和 instanceof 来判断一个对象的类型,可能 typeof 用得多些,那来看看这两个之间的区别吧. typeof : typeof 是一个一元运算符,放在一个运算数之前,运算数可以是任意类型.它返回值是一个字符串,该字符串说明运算数的类型. typeof 一般只能返回如下几个结果:number,boolean,string,function,object,undefined. ? 1 2 3 4 5 6 7 8 <script typ

判断js中各种数据的类型方法之typeof与0bject.prototype.toString讲解

转载自[脚本之家],原文链接:http://www.jb51.net/article/42864.htm 提醒大家,Object.prototype.toString().call(param)返回的[object class]中class首字母是大写,像JSON这种甚至都是大写,所以,大家判断的时候可以都转换成小写,以防出错 1.typeof(param) 返回param的类型(string) 这种方法是JS中的定义的全局方法,也是编译者们最常用的方法,优点就是使用简单.好记,缺点是不能很好的

typeof + instanceof+toString+constructor是如何判断javascript数据类型的

一.typeof JS中的变量是松散类型(即弱类型)的,可以用来保存任何类型的数据. typeof 可以用来检测给定变量的数据类型,可能的返回值: 1. 'undefined' --- 这个值未定义: 2. 'boolean' --- 这个值是布尔值: 3. 'string' --- 这个值是字符串: 4. 'number' --- 这个值是数值: 5. 'object' --- 这个值是对象或null: 6. 'function' --- 这个值是函数. 测试: document.write(

【javascript】详解变量,值,类型和宿主对象

前言 我眼中的<javascript高级程序设计> 和<你不知道的javascript>是这样的:如果<javascript高级程序设计>是本教科书的话, <你不知道的javascript>就是那本王后雄有以下两点: 1. 老师会教你: 考试最后的准备仍然要“回归课本”2. 在1的前提下并不妨碍我们希望拥有一本好用的“王后雄” JS数据类型 JS类型分类 讲到类型, 首先要说的当然是JS的类型分类, 对于这一点,<javascript高级语言程序设计&

判断js中的类型:typeof / instanceof / constructor / prototype

如何判断js中的类型呢,先举几个例子: var a = "jason"; var b = 123; var c = true; var d = [1,2,3]; var e = new Date(); var f = function(){ alert('jason'); }; 一.最常见的判断方法:typeof typeof是一个一元运算符,它返回的结果始终是一个字符串,对不同的操作数,它返回不同的结果,另外typeof可以判断function的类型:在判断除Object类型的对象时

javascript检测基本类型值或引用类型值的类型方法

首先javascript的数据类型分为两种数据类型:基本数据数据类型和引用数据类型 基本数据类型:Number,String,Boolean,Undefined,Null.原始值,是简单的数据段,可按值访问,直接操作保存在变量中的实际值 引用数据类型:Object,Array,Function,Date,RegExp,单体内置对象(Math,window(客户端才有的全局对象),global(服务端才有的全局对象)).引用值,是保存在栈内存中的对象,是有多个值构成的对象,与其他语言不同的是:你不

JavaScript 学习笔记— —类型判断

//1 判断是否为数组类型 var a=[0]; console.log(isArray(a)); function isArray(obj){ return (typeof obj=='object') && obj.constructor==Array; } console.log("2-----------------------------------") //2 判断是否为字符串类型 console.log(isString('test')); console

[Javascript]js判断是否为undefined类型

概述 在项目获取某个元素的值会出现undefined,所以对这种情况要有特殊处理. 可通过下面的代码判断是否为undefined类型. 1 if (typeof(reValue) == "undefined") { 2 alert("undefined"); 3 } 4 5 typeof 返回的是字符串,有六种可能:"number"."string"."boolean"."object"