jquery学习笔记一:数据类型判断 之 小疑惑

简介:

闲来无事想学下jquery,就扒了下jquery(1.7.2)的源码,看到开头前面的工具函数,有个判断数据类型的挺实用的,就果断摘出来用。

下面两段代码,分别为:

(1)自己从jquery里摘出来的代码,适当修改了下。

(2)jquery里面相关部分的代码,有点小疑惑,写在中文注释部分了,求指导。

 代码一:

var util = function(){
    var class2Type = {};
    var typeArr = "Number String Boolean Array Function RegExp Object Date".split(' ');
    for(var i=0,len=typeArr.length; i<len; i++){
        var type = typeArr[i];
        class2Type['[object '+ type+']'] = type.toLowerCase();
    }
    return {
        type: function(obj){  //jquery里NaN类型没做特殊判断,$.type(NaN)输出为'number',有点不理解
            return ( obj == null || isNaN(obj) ) ? String(obj).toLowerCase() : 
                                                    class2Type[Object.prototype.toString.call(obj)] || 'object';
        },
        isNumber: function(obj){  //
            return this.type(obj) === 'number';
        }
    };
}();

代码二:

class2type = {};
jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) {
    class2type[ "[object " + name + "]" ] = name.toLowerCase();
});

isNumeric: function( obj ) {  //此处若传入参数obj为'1122',结果为true,为何不直接用$.type(obj) === 'number'
    return !isNaN( parseFloat(obj) ) && isFinite( obj );
},

type: function( obj ) {  //如果参数obj为NaN,$.type(NaN)结果为‘number’,是否有误?
    return obj == null ?
        String( obj ) :
        class2type[ toString.call(obj) ] || "object";
},

相关文章
|
4月前
|
JavaScript 前端开发 Windows
jQuery权威指南学习笔记
jQuery权威指南学习笔记
|
9月前
|
移动开发 JavaScript 前端开发
[HTML CSS JS ES6 JS WebAPI JQuery]学习笔记目录
[HTML CSS JS ES6 JS WebAPI JQuery]学习笔记目录
|
10月前
|
JavaScript 前端开发 Java
HTML+CSS+JS 学习笔记(四)———jQuery
HTML+CSS+JS 学习笔记(四)———jQuery
|
JavaScript 前端开发 索引
JavaScript学习笔记(五) jQuery
JavaScript学习笔记(五) jQuery
70 0
|
Web App开发 JavaScript 前端开发
jQuery学习笔记——jQuery基础
什么是jQuery?jQuery是一个快速、简洁的JavaScript库,其设计宗旨是“write less,do more”,倡导用更少的代码,做更多的事情。通过这段时间的学习,我感觉jQuery是一个“语法糖”,就像是包在糖果外面的包装,让js看起来更好看。
107 0
|
JavaScript 前端开发 API
jquery学习笔记
1.jquery是一个框架,是javasript框架。 2.jquery能做什么? *取得页面中元素,遍历DOM(document object model文档对象模型)树,jquery为了准确的获取需要检查活操纵的文档元素,提供了可靠而富有效率的选择符机制。
64 0
|
JavaScript 索引
jQuery判断当前元素是第几个元素&获取第N个元素
jQuery判断当前元素是第几个元素&获取第N个元素
199 0
|
Web App开发 JSON JavaScript
html+css+js+jQuery学习笔记(二)
html+css+js+jQuery学习笔记
150 0
html+css+js+jQuery学习笔记(二)
|
前端开发 测试技术
html+css+js+jQuery学习笔记(一)
html+css+js+jQuery学习笔记
108 0
html+css+js+jQuery学习笔记(一)
|
Web App开发 JSON JavaScript
html+css+js+jQuery学习笔记(三)
html+css+js+jQuery学习笔记
106 0
html+css+js+jQuery学习笔记(三)