javascript中一些util方法匯總
javascript中一些util方法匯總
/***************原生對(duì)象工類(lèi)方法****************/
/**
* 判斷非空
* @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;
}
/**
* 獲取字符串真實(shí)長(zhǎng)度 漢字算兩位
* @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();
}
})()
/**
* 判斷參數(shù)類(lèi)型
* @param obj
* @returns {string}
*/
function type(obj) {
return obj == null ? String(obj) : class2type[toString.call(obj)] || "object";
}
/**
* 判斷參數(shù)是否為布爾類(lèi)型
* @param obj
* @returns {boolean}
*/
function isBoolean(obj) {
return isEmpty(obj) ? false : type(obj) === 'boolean';
}
/**
* 判斷參數(shù)是否為數(shù)字類(lèi)型
* @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';
}
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
相關(guān)文章
Javascript在IE和Firefox瀏覽器常見(jiàn)兼容性問(wèn)題總結(jié)
這篇文章主要介紹了Javascript在IE和Firefox瀏覽器常見(jiàn)兼容性問(wèn)題,結(jié)合實(shí)例形式總結(jié)分析了javascript在IE與Firefox瀏覽器中常見(jiàn)的各種兼容性問(wèn)題與相應(yīng)的解決方法,需要的朋友可以參考下2016-08-08
javascript 跨瀏覽器開(kāi)發(fā)經(jīng)驗(yàn)總結(jié)(五) js 事件
javascript 跨瀏覽器開(kāi)發(fā)之js 事件的兼容性問(wèn)題,需要的朋友可以參考下。2010-05-05
合并多個(gè)ArrayBuffer場(chǎng)景及方法示例
這篇文章主要為大家介紹了合并多個(gè)ArrayBuffer方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11
LayUi中接口傳數(shù)據(jù)成功,表格不顯示數(shù)據(jù)的解決方法
今天小編就為大家分享一篇LayUi中接口傳數(shù)據(jù)成功,表格不顯示數(shù)據(jù)的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
使用js在layui中實(shí)現(xiàn)上傳圖片壓縮
這篇文章主要介紹了使用js在layui中實(shí)現(xiàn)上傳圖片壓縮,layui 是一款采用自身模塊規(guī)范編寫(xiě)的前端 UI 框架,js上傳圖片壓縮百度有很多方法,,需要的朋友可以參考下2019-06-06
實(shí)現(xiàn)連綴調(diào)用的map方法(prototype)
實(shí)現(xiàn)連綴調(diào)用的map方法(prototype),需要學(xué)習(xí)的朋友可以參考下。2009-08-08
JS復(fù)雜判斷的更優(yōu)雅寫(xiě)法代碼詳解
我們編寫(xiě)js代碼時(shí)經(jīng)常遇到復(fù)雜邏輯判的情況,通常大家可以用if/else或者switch來(lái)實(shí)現(xiàn)多個(gè)條件判斷,但這樣會(huì)有個(gè)問(wèn)題,隨著邏輯復(fù)雜度的增加,代碼中的if/else/switch會(huì)變得越來(lái)越臃腫,越來(lái)越看不懂,那么如何更優(yōu)雅的寫(xiě)判斷邏輯,本文帶你試一下2018-11-11

