javascript如何判断是不是对象

2021-01-05 07:02:08 字数 4181 阅读 8151

1楼:匿名用户

比如有一个变

量a,vara=******xx;

if(typeofa=="number")elseif(typeofa=="string")elseif(typeofa=="undefined")elseif(typeofa=="boolean")elseif(typeofa=="object")

或者使用instance of:

varb=newdate();

if(binstanceofdate)varc=;

if(cinstanceofarray)

js如何判断一个对象是不是array

2楼:匿名用户

//返回true为array,false不是array

functionisarray(obj)returnfalse;

}以上函数可以判断js中的一个对象是不是array。

调用:if(!isarray("ddd"))if(isarray([1,2,3,4,])){alert("是数组!")};

3楼:夏冰

var a=[1,2,3];

array.isarray(a); //truevar a = ;

array.isarray(a); //false

4楼:baby_原來

functionisarray(obj)

5楼:匿名用户

试试这个

var a=[1,2];

a instanceof array

6楼:呆子2豆比

var obj = ;

console.log(array.prototype.isprototyoeof(obj));

console.log(obj.constructor == array);//constructor是隐藏属性,不推荐使用

console.log(obj instanceof array); // 2的替代

以上这三种都不严谨,假如 var obj1 = {};obj1.__proto__ = obj; 这样产生一个继承关系,ojb1在使用以上三种方法进行判断时,结果也会输出为 true

console.log(object.prototype.tostring.call(obj) === '[object array]');

console.log(array.isarray(obj));// 4的简化。

4和5最为准确

javascript 判断判断某个对象是object还是一个array

7楼:匿名用户

这个有个笨办法,就是写以下**判断a是否为数组

trycatch(e)

就是用try...catch**块来尝试进行数组的特有操作,如果不报错,那就是数组了

8楼:匿名用户

使用instanceof可以判断一个变量的数据类型,见下面的例子:

function test2();

var f = function()

var of = new f();

document.writeln(a instanceof array);

document.writeln(d instanceof date);

document.writeln(o instanceof object);

document.writeln(f instanceof function);

document.writeln(of instanceof f);

} test2();

javascript如何判断一个变量是普通变量还是数组还是对象?

9楼:匿名用户

1、使用typeof操作符检测变量类型

数组、null、object 为 object 类型字符串 为 string 类型

true和false 为 boolean 类型整型、浮点型为 number 类型

2、如果要区分数组和非数组对象,需要使用构造函数来判断if(arr.constructor==array)// arr 是数组

else

// arr 不是数组

js如何判断一个对象是不是array?

10楼:匿名用户

本来判断一个对象类型用typeof是最好的,不过对于array类型是不适用的

可以使用 instanceof操作符

var arraystr=new array("1","2","3","4","5");

alert(arraystr instanceof array);

当然以上在一个简单的页面布局里面是没有问题的,如果是复杂页面情况,入获取的是frame内部的array对象,可以用这个函数判断:

function isarray(obj)

请问js怎么判断一个变量是对象还是数组呢?

11楼:太原东方医院

在javascript中所有数据类型严格意义上都是对象,但实际使用中我们还是有类型之分,如果要判断一个变量是数组还是对象使用typeof搞不定,因为它全都返回object

var o = ;

var a = ['reg','blue'];

var getdatatype = function(o)else

}else

}; alert( getdatatype(o) ); // object

alert( getdatatype(a) ); // array

alert( getdatatype(1) ); // param is no object type

alert( getdatatype(true) ); // param is no object type

alert( getdatatype('a') ); // param is no object type

js 判断对象是否是同一个对象 10

12楼:tw孤声边界

你的意抄思是判断两个对象是否是同一个对象,在js里,字符串不是对象类型(当然js里从宏观上说神马一切都是对象),基本数据类型存在栈内存里,存的是他们的值不是存的地址,在基本数据类型里值相等并且数据类型相同他们就完全相等(除开奇怪的nan)。所以s1==s2为true,a===b也为true,b==c还是为true,b===c也为true。

他们本身就是全等的,var a="ab",b="abc".substr(0,2) ,c=b;因为存的东西都是一样都是他们的值。你可以把string换成array或者obj就跟你想要的效果一样了。

13楼:

从举例来看,是将baistring当做全部对象du了。

在javsscript中,没有

zhi类似c, c++中的所谓取地dao址的操作,给string变量赋版值,就是值复制。权所有的string变量都是有自己的存储空间的;而string变量的比较就是比较其内容是否相同,而不是比较是否为同一存储空间的变量。

如果是页面元素对象或者其他自定义“类”实例的话,那么等号操作符则是比较元素对象是否为同一实例。

14楼:灰常了

一个脚本语言而已,不至于到内存吧。

15楼:

js又不需要你去操作内存,搞不懂你为什么非要判断两个字符串是否引用同一个内存地址,有什么意义?楼主根本就是想太复杂了。

js如何判断一个对象是不是array

16楼:匿名用户

在开发中,我们经常需要判断某个对象是否为数组类型,在js中检测对象类型的常见方法都有哪些呢?

17楼:仵野夕溪

js判断数组貌似是一个古老的话题了,n年前写一个asp后台,采用了javascript脚本,就曾遇到过这样的问题。js在面向对象方面做的不是很好呵~

js判断是不是空对象,js 如何判断是不是object

1楼 布给乾 var isnull obj if obj return true 2楼 tube翔 用if判断 是否为 null undefined 3楼 匿名用户 if data js 如何判断是不是object 4楼 匿名用户 使用js中的typeof方法来判断, 如下 回 5楼 匿名用户 我认...

js如何判断对象是不是Array

1楼 匿名用户 本来判断一个对象类型用typeof是最好的,不过对于array类型是不适用的 可以使用 instanceof操作符 var arraystr new array 1 2 3 4 5 alert arraystr instanceof array 当然以上在一个简单的页面布局里面是没有...

如何判断男生是不是gay,如何判断一个男生是不是gay

1楼 么么哒 同性恋在社会上生存这么不容易,你们还要把他们单另出来,种族歧视未免太严重了, 还有,听网上那些自称很了解同性恋的瓜怂 卅匹,们,告诉你一些辨别同性恋的方法,再别瞎扯蛋,那种人只占7成,。。。。 如何判断一个男生是不是同性恋? 2楼 绿萍也妖娆 从他对待男生和女生的态度就能看出来的,若是...