instanceof:
instanceof 用于判断一个变量是否是某个对象的实例。
如 var a=new Array();
alert(a instanceof Array); 会返回 true,
同时 alert(a instanceof Object) 也会返回 true;
这是因为 Array 是 object 的子类。
再如:function test(){};var a=new test();alert(a instanceof test) 会返回false。
另外:
测试
var a=new Array();
if (a instanceof Object)
alert('Y');
else alert('N');
得’Y’
if (window instanceof Object)
alert('Y');
else alert('N');
所以,这里的 instanceof 测试的 object 是指 js 语法中的 object,不是指 dom 模型对象
typeof:
typeof 是一个一元运算,放在一个运算数之前,运算数可以是任意类型。
它返回值是一个字符串,该字符串说明运算数的类型。typeof 一般只能返回如下几个结果:
number,boolean,string,function,object,undefined。我们可以使用 typeof 来获取一个变量是否存在,
如 :
if(typeof a!="undefined")
{alert("ok")};
而不要去使用 if(a) 因为如果 a 不存在(未声明)则会出错,对于 Array,Null 等特殊对象使用 typeof 一律返回 object,这正是 typeof 的局限性。
valueOf()
返回指定对象的原始值
var arr=["aa","aaa"];
alert(arr.valueOf());//aa,aaa
indexOf()
stringObject.indexOf(searchvalue,fromindex)
该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的 fromindex 处或字符串的开头(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一次出现的位置。stringObject 中的字符位置是从 0 开始的。