MooTools:如何判断对象是否为数组?

4
在MooTools中,有没有一种快捷的方法来判断一个对象是对象还是数组?
4个回答

9
MooTools有一个$type()函数,可以传入一个对象进行判断。
var myString = 'hello';
$type(myString);

您可以在http://mootools.net/docs/core#type上找到更多相关的IT技术信息。

2
在最新版本的Mootools中,此函数现在被称为typeOf:http://mootools.net/docs/core/Core/Core#Core:typeOf - philfreo

2

不确定MooTools,但你可以用JavaScript检查:

var someObject = [];
console.log(someObject instanceof Array) // logs true

但是由于数组也是一个对象,所以在检查对象之前,您必须首先检查它是否为数组。但是使用 $type 方法可能更容易。

编辑:

Mootools提供了一个 $type 函数来获取对象的类型:

测试运行:

console.log($type("hello"));​​​​​
console.log($type(new Object()));
console.log($type([1, 2, 3]));
​

输出:

string
object
array

在购买前请先试用,访问http://mootools.net/shell/

这篇文章提供了相关信息 - http://javascript-reference.info/useful-utility-functions-in-mootools.htm


instanceof检查对于来自另一个窗口或框架的数组将返回false - Tim Down

1

你可以使用本地JavaScript来实现这个功能:

Object.prototype.toString.apply(value ) === '[object Array]'

来源:The Miller Device


0

在1.3.2及以上版本中,您可以使用typeOffunction,还有一个更短、更语义化的快捷方式,使用Type对象:

// syntax Type.is[type]

Type.isArray(['foo', 'bar']); // true

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接