javascript中一些util方法汇总

 更新时间:2015年06月10日 11:32:38   投稿:hebedich  
Util.js文件包含了一些工具函数,来帮助人们使用JavaScript数据(例如从服务器返回的数据)来更新Web页面。有需要的小伙伴可以参考下

javascript中一些util方法汇总

/***************原生对象工类方法****************/
/**
 * 判断非空
 * @param obj
 * @returns {boolean}
 */
function isEmpty(obj) {
  if (obj == undefined || obj == null || new String(obj).trim() == '') {
    return true;
  } else {
    return false;
  }
}
/**
 * 判断非空
 * @param obj
 * @returns {boolean}
 */
function isNotEmpty(obj) {
  return isEmpty(obj) ? false : true;
}
/**
 * 获取字符串真实长度 汉字算两位
 * @param str
 * @returns {number}
 */
var getRealLength = function (str) {
  return isEmpty(str) ? 0 : str.replace(/[^\x00-\xff]/g, "**").length;
}
var class2type = {}, toString = Object.prototype.toString;
(function () {
  var typeArr = "Boolean,Number,String,Function,Array,Date,RegExp,Object".split(",");
  for (var i = 0; i < typeArr.length; i++) {
    var name = typeArr[i];
    class2type["[object " + name + "]"] = name.toLowerCase();
  }
})()
/**
 * 判断参数类型
 * @param obj
 * @returns {string}
 */
function type(obj) {
  return obj == null ? String(obj) : class2type[toString.call(obj)] || "object";
}
/**
 * 判断参数是否为布尔类型
 * @param obj
 * @returns {boolean}
 */
function isBoolean(obj) {
  return isEmpty(obj) ? false : type(obj) === 'boolean';
}
/**
 * 判断参数是否为数字类型
 * @param obj
 * @returns {boolean}
 */
function isNumeric(obj) {
  return isEmpty(obj) ? false : type(obj) === 'number';
}
function isString(obj) {
  return isEmpty(obj) ? false : type(obj) === 'string';
}
function isFunction(obj) {
  return isEmpty(obj) ? false : type(obj) === 'function';
}
function isArray(obj) {
  return isEmpty(obj) ? false : type(obj) === 'array';
}
function isDate(obj) {
  return isEmpty(obj) ? false : type(obj) === 'date';
}
function isRegExp(obj) {
  return isEmpty(obj) ? false : type(obj) === 'regexp';
}
function isObject(obj) {
  return isEmpty(obj) ? false : type(obj) === 'object';
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • Javascript在IE和Firefox浏览器常见兼容性问题总结

    Javascript在IE和Firefox浏览器常见兼容性问题总结

    这篇文章主要介绍了Javascript在IE和Firefox浏览器常见兼容性问题,结合实例形式总结分析了javascript在IE与Firefox浏览器中常见的各种兼容性问题与相应的解决方法,需要的朋友可以参考下
    2016-08-08
  • javascript 跨浏览器开发经验总结(五) js 事件

    javascript 跨浏览器开发经验总结(五) js 事件

    javascript 跨浏览器开发之js 事件的兼容性问题,需要的朋友可以参考下。
    2010-05-05
  • 合并多个ArrayBuffer场景及方法示例

    合并多个ArrayBuffer场景及方法示例

    这篇文章主要为大家介绍了合并多个ArrayBuffer方法示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • LayUi中接口传数据成功,表格不显示数据的解决方法

    LayUi中接口传数据成功,表格不显示数据的解决方法

    今天小编就为大家分享一篇LayUi中接口传数据成功,表格不显示数据的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • 浅析TypeScript 命名空间

    浅析TypeScript 命名空间

    命名空间一个最明确的目的就是解决重名问题。这篇文章主要介绍了TypeScript 命名空间的相关知识,本文通过实例详解给大家介绍的非常详细,需要的朋友可以参考下
    2020-03-03
  • 使用js在layui中实现上传图片压缩

    使用js在layui中实现上传图片压缩

    这篇文章主要介绍了使用js在layui中实现上传图片压缩,layui 是一款采用自身模块规范编写的前端 UI 框架,js上传图片压缩百度有很多方法,,需要的朋友可以参考下
    2019-06-06
  • 实现连缀调用的map方法(prototype)

    实现连缀调用的map方法(prototype)

    实现连缀调用的map方法(prototype),需要学习的朋友可以参考下。
    2009-08-08
  • uniapp组件uni-popup弹出层的使用

    uniapp组件uni-popup弹出层的使用

    弹出层组件用于弹出一个覆盖到页面上的内容,本文主要介绍了uniapp组件uni-popup弹出层的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-03-03
  • 弥补localStorage容量缺陷方法详解

    弥补localStorage容量缺陷方法详解

    这篇文章主要为大家介绍了弥补localStorage容量缺陷的方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • JS复杂判断的更优雅写法代码详解

    JS复杂判断的更优雅写法代码详解

    我们编写js代码时经常遇到复杂逻辑判的情况,通常大家可以用if/else或者switch来实现多个条件判断,但这样会有个问题,随着逻辑复杂度的增加,代码中的if/else/switch会变得越来越臃肿,越来越看不懂,那么如何更优雅的写判断逻辑,本文带你试一下
    2018-11-11

最新评论