JavaScript工具类(四):数据类型

版权声明:原创文章,引用请注明出处! https://blog.csdn.net/guang_s/article/details/86689141
/**
 * @description: 通用工具类
 * @author: guang.shi <https://blog.csdn.net/guang_s> 
 * @date: 2018-12-13 15:38:27 
 */
'use strict';

(function (window) {
    var u = {}; 
    
	/**
     * @description JavaScript数据类型
     * 
     * 基本类型        string number boolean null undefined
     * 引用类型        array object function date 等
     * 
     * 强制类型转换     Number() String() Boolean()
     * 
     * typeof       返回一个字符串 'undefined' 'boolean' 'number' 'string' 'function' 'symbol' 'object'
     * isNaN()      判断元素是否为非数字,是数字则为false(包括 number 类型 和 由数字组成的 string 类型)
     * toString()   转化为字符串
     */

    /**
     * @description 判断元素是否为字符串
     * @param {*} source 
     * @return {Boolen}
     */
    u.isString = function (source) {
        return typeof (source) === 'string';
    };

    /**
     * @description 判断元素是否为数组
     * @param {*} source 
     * @return {Boolen}
     */
    u.isArray = function (source) {
        if (Array.isArray) return Array.isArray(source);
        else return source instanceof Array;
    };

    /**
     * @description 判断元素是否为对象
     * @param {*} source 
     * @return {Boolen}
     */
    u.isObject = function (source) {
        return Object.prototype.toString.call(source) === '[object Object]';
    };

    /**
     * @description 判断元素是否为函数
     * @param {*} source 
     * @return {Boolen}
     */
    u.isFunction = function (source) {
        return typeof (source) === 'function';
    };

    /**
     * @description 判断元素是否为空
     * @param {*} source 
     * @return {Boolen}
     */
    u.isEmpty = function (source) {
        if (source == undefined || source == null) return true;
        if (u.isString(source)) return source.length == 0;
        if (u.isArray(source)) return source.length == 0;
        if (u.isObject(source)) return JSON.stringify(source) === '{}';
        else return source.toString().length == 0;
    };

    /**
     * @description 判断元素的长度
     * @param {*} source 
     * @return {Number}
     */
    u.length = function(source) {
        if (source == undefined || source == null) return 0;
        if (u.isString(source)) return source.length;
        if (u.isArray(source)) return source.length;
        if (u.isObject(source)) {
            var len = 0;
            for(var key in source){
                len ++;
            }
            return len;
        }
    };
    
	window.util = u;
})(window);

.

下载

npm i sg-utils -D

相关文章

JavaScript工具类(一):util.js创建及上传
JavaScript工具类(二):cookie缓存
JavaScript工具类(三):localStorage本地储存
JavaScript工具类(四):数据类型
JavaScript工具类(五):string字符串
JavaScript工具类(六):number数字
JavaScript工具类(七):array数组
JavaScript工具类(八):object对象
JavaScript工具类(九):date日期
JavaScript工具类(十):base64
JavaScript工具类(十一):浏览器类型

猜你喜欢

转载自blog.csdn.net/guang_s/article/details/86689141