/***************原生对象工类方法****************/

/**

* 判断非空

* @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';

}

php util.js,javascript中一些util方法汇总_javascript技巧相关推荐

  1. php js 获取 客户端ip地址,JS获取客户端IP地址、MAC和主机名的7个方法汇总_javascript技巧...

    今天在搞JS(javascript)获取客户端IP的小程序,上网搜了下,好多在现在的系统和浏览器中的都无效,很无奈,在Chrome.FireFox中很少搞到直接利用ActiveX获取IP等的JS脚本. ...

  2. JS JavaScript中去除数组中重复元素的方法

    JS JavaScript中去除数组中重复元素的方法 感觉比较好理解的3种方法,总结一下,大家共同学习 方法一: Array.prototype.method1 = function(){ var a ...

  3. JS/JavaScript中解析JSON --- JSON.parse()、JSON.stringify()以及$.parseJSON()使用详解

    JS/JavaScript中解析JSON --- JSON.parse().JSON.stringify()以及$.parseJSON()使用详解 现在JSON格式在web开发中非常重要,特别是在使用 ...

  4. JavaScript中的部分函数/方法参考

    目录 1.Object.defineProperty方法 2.for.for...in.for...of.forEach方法 for循环(可使用return.break等来中断循环) forEach循 ...

  5. Javascript中二进制数据处理方法

    Javascript中二进制数据处理方法 转载于:https://www.cnblogs.com/motadou/archive/2012/02/19/2358514.html

  6. [js] js循环中调用异步的方法,如何确保执行结果的顺序是正确的?

    [js] js循环中调用异步的方法,如何确保执行结果的顺序是正确的? An example:let searchApi = function(arg){return new Promise((reso ...

  7. php中使用confirm,如何使用JavaScript中的confirm()方法

    confirm方法的使用:通过给元素设置confirm函数来创建一个带有确认和取消按钮的提示框,当点击确认时返回true,取消时返回false 今天将讲解JavaScript中confirm() 方法 ...

  8. JavaScript 中的forEach()方法

    JavaScript 中的forEach方法 一.forEach()的定义和用法? 1.第一个是数组的每一项值(必选) 2.第二个是数组下标(可选) 3.第三个是原数组(可选) 4.forEach() ...

  9. JavaScript中的valueOf方法详解

    Object.prototype.valueOf() valueOf() 方法返回指定对象的原始值. 语法 object.valueOf() 返回值 返回值为该对象的原始值. 描述 JavaScrip ...

最新文章

  1. C 语言编程 — 堆栈与内存管理
  2. jenkins-git-gradle配置项目
  3. su user oracle does not exist,Linux下oracle用户无法su切换的异常【终极解决方案_生产环境亲测有效】...
  4. 【Boost】boost库中thread多线程详解9——thread_specific_ptr线程局部存储
  5. Spark之Spark角色介绍及运行模式
  6. windows环境里React-Native运行失败的原因之一,安卓模拟器未启动
  7. C语言试题二十五之编写一个函数float function(double h),函数的功能使对变量h中的值保留2位小数,并对第三位进行四舍五入(规定h中的值位正数)。
  8. 面试中如何剔除“鱼目混珠”程序员?
  9. Tomcat服务器安装PFX格式证书
  10. 一、Rabbitmq安装与配置信息
  11. python算法学习代码_python 算法学习部分代码记录篇章1
  12. 投篮机投篮有技巧吗_卡梅伦·约翰逊:投篮高效,跑位积极,会是太阳队外线新答案吗?...
  13. solaris查看服务器信息,Solaris下如何显示服务器虚拟内存统计信息
  14. 「ds」网络操作系统和分布式操作系统之间的区别
  15. 自控原理学习笔记---控制系统稳定性分析
  16. HTML5多媒体(音频、视频播放)
  17. Q3净利润同比涨超313%,金山办公为何不能松懈?
  18. 家用电脑如何安装服务器系统,普通电脑安装服务器系统
  19. CodeFun-UI 设计稿智能生成前端源代码
  20. ES6-ES11新特性速查手册

热门文章

  1. qt怎么设置标签背景图片_HTML中怎么设置h1的字体样式你知道吗?关于设置h1标签的样式详解...
  2. java考前复习之数组
  3. linux接收网络数据并存存储,Linux网络设备驱动之数据接收流程(六)
  4. 解决python报错写入文件 io.UnsupportedOperation: not writable
  5. pandas重采样时指定对不同列的不同操作
  6. FATE框架安装后测试报错:ModuleNotFoundError: No module named ‘arch‘
  7. Linux上简体繁体文件的相互转换
  8. houghcircle函数_Hough Circle 变换
  9. h5移动端局部放大效果
  10. Ubuntu 16.04 安装Go 1.9.2