jquery怎么判断对象是否是数组


当前第2页 返回上一页

返回值 true/false

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

<!DOCTYPE html>

<html>

<head>

<title>jq中的isArray方法分析</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

</head>

<body>

<div class="warp">

</div>

<script type="text/javascript">

//下面是从jquery 1.9中抽出来的源码

var class2type = {},core_toString = class2type.toString;

//在firefox chrome IE9 IE10中都支持 Array.isArray

//使用方法 Array.isArray([])   返回 true

//但是在IE7或更低版是不支持的

var isArray = Array.isArray || function( obj ) {

        return type(obj) === "array";

};

/*

这一行也不能忽略  948行

jQuery.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(i, name) {

    class2type[ "[object " + name + "]" ] = name.toLowerCase();

});

一开始没关注这段代码,结果弄了半天 type([])都是返回 object

那这段代码用JS写出来如下

*/

var arr = "Boolean Number String Function Array Date RegExp Object Error".split(" ");

for(var i in arr){

    class2type[ "[object " + arr[i] + "]" ] = arr[i].toLowerCase();

};

var  type = function( obj ) {

    if ( obj == null ) {

        return String( obj );

    }

    return typeof obj === "object" || typeof obj === "function" ?

        class2type[ core_toString.call(obj) ] || "object" :

        typeof obj;

    // 相当于return (typeof obj === "object" || typeof obj === "function")?(class2type[ core_toString.call(obj) ] || "object"): typeof obj;

};

//这样就可以了

//后来在网上搜索了一下 发现了网上提供的方案是   return Object.prototype.toString.call(obj) === '[object Array]';

//详情查看 http://sofish.de/1591

</script>

</body>

</html>

相关免费学习推荐:JavaScript(视频)

以上就是jquery怎么判断对象是否是数组的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

html怎么删除表格的第二行

jQuery回显是什么意思

jQuery如何判断对象是否为空

jQuery如何判断滚动条是否到底部

jQuery中ajax提交数据乱码怎么办

jQuery读取json乱码怎么办

jQuery怎样才能快速滚动到页面顶部

jQuery 如何判断iframe是否加载完成

jQuery 轮播图怎么写

jQuery中如何数组去重复数据

更多相关阅读请进入《jQuery》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...