Javascript 判断 object 的特定类转载

大家都知道 Javascript 的 typeof 可以获取变量的类型, 但是 typeof 返回值只有六种 "number," "string," "boolean," "object," "function," 和 "undefined."

其实 Javascript 还有不少特殊的类别 比如 Array, Date. 为什么都不在能在 typeof 返回呢?
原来 Javascript 是把 Array Date Object 这几个都归类成 object 类了. 我们只能通过 instanceof 来判断 object 的准确类别了.

这里有个简单的例子,可以说明 instanceof 的用法


代码如下:

function objTest(obj){
   var i, t, s = "";   // 创建变量。
   t = new Array();   // 创建一个数组。
   t["Date"] = Date;   // 填充数组。
   t["Object"] = Object;
   t["Array"] = Array;
      for (i in t)
      {
         if (obj instanceof t[i])   // 检查 obj 的类。
         {
            s += "obj is an instance of " + i + "\n";
         }
         else 
         {
            s += "obj is not an instance of " + i + "\n";
         }
   }
   return(s);   // 返回字符串。
}

var obj = new Date();
response.write(objTest(obj));

(0)

相关推荐

  • jsp传值本地无乱码测试机出现乱码问题解决

    jsp 代码如下: 复制代码 代码如下: <a id="wd" name="wd" href="javascript:void(0);" onclick="wdQuery()">文档</a>    <a id="xw" name="xw" href="javascript:void(0);" onclick="xwQuery()

  • Lua中操作字符串的基本方法整理

    字符串是一个字符序列,以及控制字符.字符串可以用三种形式被初始化,其中包括: 单引号之间的字符 双引号之间的字符 [] 之间的字符[[和]] 对于上述三种形式的一个例子如下所示. 复制代码 代码如下: string1 = "Lua" print("\"String 1 is\"",string1) string2 = 'Tutorial' print("String 2 is",string2) string3 = [[&qu

  • javascript 获取HTMl文件指定元素的代码

    获取HTML文件的指定元素 function getElement1(){ alert(document.all("myH2").tagName); } function getElement2(){ alert(myH2.tagName); } function showTags(){ alert(document.all.tags("P").length); } function showItems(){ var strTags = "";

  • Javascript 判断 object 的特定类转载

    大家都知道 Javascript 的 typeof 可以获取变量的类型, 但是 typeof 返回值只有六种 "number," "string," "boolean," "object," "function," 和 "undefined." 其实 Javascript 还有不少特殊的类别 比如 Array, Date. 为什么都不在能在 typeof 返回呢? 原来 Javascri

  • JavaScript 判断判断某个对象是Object还是一个Array

    1.typeof 操作符.对于Function, String, Number ,Undefined 等几种类型的对象来说,他完全可以胜任,但是为Array时 复制代码 代码如下: var arr=new Array("1","2","3","4","5"); alert(typeof(arr)); 你会收到一个object 的答案,有点让人失望 . 2.instanceof 操作符,JavaScript中

  • JavaScript中Object.prototype.toString方法的原理

    在JavaScript中,想要判断某个对象值属于哪种内置类型,最靠谱的做法就是通过Object.prototype.toString方法. var arr = []; console.log(Object.prototype.toString.call(arr)) //"[object Array]" 本文要讲的就是,toString方法是如何做到这一点的,原理是什么. ECMAScript 3 在ES3中,Object.prototype.toString方法的规范如下: 15.2.

  • JavaScript判断两个值相等的方法详解

    目录 前言 非严格相等 严格相等 同值零 同值 总结 前言 在 JavaScript 中如何判断两个值相等,这个问题看起来非常简单,但并非如此,在 JavaScript 中存在 4 种不同的相等逻辑,如果你不知道他们的区别,或者认为判断相等非常简单,那么本文非常适合你阅读. ECMAScript 是 JavaScript 的语言规范,在ECMAScript 规范中存在四种相等算法,如下图所示: 上图中四种算法对应的中文名字如下,大部分前端应该熟悉严格相等和非严格相等,但对于同值零和同值却不熟悉,

  • javascript封装的sqlite操作类实例

    本文实例讲述了javascript封装的sqlite操作类.分享给大家供大家参考.具体如下: function sql(name,v,desc,size,tables){ this.db=null; this.name=name; this.v=v; this.desc=desc; this.size=size; this.tables=tables; this.ini(); } sql.prototype.ini=function(){ var self=this; self.db=openD

  • JavaScript判断变量是否为数组的方法(Array)

    今天小编给大家整理些关于javascript判断变量是否是数组(Array)的相关知识,主要通过以下四点给大家展开话题,具体内容如下所示: 1. typeof真的那么厉害吗?? //首先看代码 var ary = [1,23,4]; console.log(typeof ary); //输出结果是Object 上面的办法并不能实时的检测出是否是数组,只能判断其类型,所以说typeof判断基本类型数据还是挺好的,但是不能准确测试出是否是数组(typeof的具体用法以后提及,现在回归正题) 2.in

  • javascript 判断一个对象为数组的方法

    javascript 判断一个对象为数组的方法 数组对象 js的数组是无类型的:数组元素可以是任意类型,并且同一个数组中的不同元素也可能有不同的类型.数组的元素可以是对象或其他数组,这样就可以创建复杂的数据结构. 通常我们可以用一元运算符typeof来判断js的数据类型,但是对于数组这样一个特殊的对象却只能返回"object" typeof [1,2,3] "object" typeof 100 "number" typeof false &qu

  • JavaScript知识点总结(六)之JavaScript判断变量数据类型

    最近做了一个项目,其中有关于js判断数据类型的处理,在网上搜了相关资料,并且亲自测试了各种数据类型的判断,绝对安全.下面小编把具体内容总结分享给大家,大家参考下! 一.JS中的数据类型 1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) 7.未定义(Undefined) 二.判断一个变量的数据类型 1.数值型(number) 比较常用的判断方法是: function i

  • JavaScript 判断一个对象{}是否为空对象的简单方法

    做项目时遇到一个问题,判断一个对象是否为空对象,发现这样判断可以,上代码: 1. 代码1: var a = {}; if(!a){ console.log(1);} else if(a == null) { console.log(2);} else { console.log(3);} 结果为:3 2. 代码2: var b = {}; if(b == {}){ console.log(4);} if(b == '{}') { console.log(5);} if(typeof(b) ==

  • JavaScript判断对象是否为数组

    文中为大家分享了三种JavaScript判断对象是否为数组的方法, 1. typeof 首先我们会想到的是使用typeof来检测数据类型,但是对于Function, String, Number, Undefined等这几种基本类型来说,使用typeof来检测都可以检测到,比如代码如下: function test(){} console.log(typeof 1); // number console.log(typeof test); // function console.log(type

随机推荐