前端項(xiàng)目中常用的幾種方法

新建公共方法js文件(例:public.js)

1、校驗(yàn)手機(jī)號(hào)碼

export function checkMobile(mobile) {

? ??return mobile == null ? false : /^(((1[3456789][0-9]{1})|(15[0-9]{1}))+\d{8})$/.test(mobile);

}


2务蝠、校驗(yàn)是否為空

export function isBlank(input) {

? ??????return input == null || input == undefined || input == '';

}


3拍谐、判斷字符串長(zhǎng)度,如果是漢字則為1

export function strLength(str) {

? ??????var leng = 0;

? ??????for (var i = 0; i < str.length; i++) {

? ??????????????var?num = str.charCodeAt(i);

? ??????????????leng++;

? ? ? ? }

? ??????return leng;

}


4馏段、獲取url中參數(shù)的值

export function getQueryString(name) {

? ??????var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");

? ??????var r = window.location.search.substr(1).match(reg);

? ??????if (r != null) {

? ??????????????return unescape(r[2]);

? ? ? ? }

? ??????return null;

}


5轩拨、校驗(yàn)郵箱

export function checkEmail(str) {

? ??????var reg = new RegExp("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$");

? ? ? ? if(str.length<1 ||?!reg.test(str)) {

? ? ? ? ? ????? return false;

? ? ? ? }else{

? ? ? ? ? ? ? ? return true;

? ? ? ? }

}


6、返回格式化日期

export function correctDateFormat(tim) {

? ??????let time = new Date(tim);

? ??????let y = time.getFullYear();

? ??????let m = time.getMonth() + 1;

? ??????let d = time.getDate();

? ??????let newM = m < 10 ? '0' + m : m;

? ??????let newD = d < 10 ? '0' + d : d;

? ? ? ? return y + '-' + newM + '-' + newD;

}


7院喜、返回格式化日期時(shí)間

export function correctDatetimeFormat(tim) {

? ??????let time = new Date(tim);

????????let date =?correctDateFormat(tim)

? ??????let h = time.getHours();

? ??????let m = time.getMinutes();

? ??????let s = time.getSeconds();

? ??????let newH = h < 10 ? '0' + h : h;

? ??????let newM = m < 10 ? '0' + m : m;

? ??????let newS = s < 10 ? '0' + s : s;

? ? ? ? return?date + ' ' + newH + ':' + newMM + ':' + newS;

}


8亡蓉、數(shù)組去重(例:[1,2,3,1,12,3])

export function simpleDuplicateRemoval(arr) {

? ? ? ? return?Array.from(new Set(arr));

}


9、根據(jù)key排序(例:[{id:? 1, value: 'asaa'}])

export function?arraySort(arr, key) {

? ? ? ? let brr = arr;

? ? ? ? brr.sort(function(a,b){

? ??????????????return a[key]- b[key];

? ??????})

? ? ? ? return?brr;

}


10喷舀、根據(jù)生日計(jì)算年齡

export function countAgeByBirthday(bir) {

? ? ? ? return??(new Date().getFullYear() - scope.row.Birthday.split("-")[0])

}


11砍濒、根據(jù)身份證計(jì)算年齡

export function?countAgeByCard(num) {

? ? return (new Date().getFullYear() -?num.substring(6, 10));

}


12、計(jì)算兩時(shí)間差(分鐘)

export function?dateDiff(firstDate, secondDate) {

? ??????var firstDate = new Date(firstDate);

? ??????var secondDate = new Date(secondDate);

? ??????var diff = firstDate.getTime() - secondDate.getTime();

? ??????var result = Math.floor(diff / (1000 * 60));

? ??????return result;

}


13硫麻、生成指定數(shù)值隨機(jī)數(shù)

export function?dateDiff(minNum, maxNum) {

? ??????return Math.floor(min + Math.random() * (max - min));

}


14梯影、檢測(cè)當(dāng)前環(huán)境是否為手機(jī)

export function checkPhone() {

? ??????var sUserAgent = navigator.userAgent.toLowerCase();

????????if (/ipad|iphone|midp|rv:1.2.3.4|ucweb|android|windows ce|windows mobile/.test( sUserAgent )){

? ? ? ? ? ? ? ? return?true;

? ? ? ? }else{

? ??????????????return?false;

? ? ? ? }

}


15、存儲(chǔ)Cookie

export function addCookie(objName, objValue, objHours) {

? ??????var str = objName + "=" + escape(objValue); // 編碼

? ??????if (objHours > 0) { // 為0時(shí)不設(shè)定過(guò)期時(shí)間庶香,瀏覽器關(guān)閉時(shí)cookie自動(dòng)消失

? ??????????????var date = new Date();

? ??????????????var ms = objHours * 3600 * 1000;

? ??????????????date.setTime(date.getTime() + ms);

? ??????????????str += "; expires=" + date.toGMTString();

? ? ? ? }

? ??????document.cookie = str;

}


16甲棍、刪除Cookie

export function clearCookie(objName) {

? ??????var str = objName + "=" + escape(""); // 編碼

? ??????var date = new Date("1990-01-01");

? ??????var ms = objHours * 3600 * 1000;

? ??????date.setTime(date.getTime() + ms);

? ??????str += "; expires=" + date.toGMTString();

? ??????document.cookie = str;

}


17、獲取指定名稱Cookie

export function getCookie(objName) {

? ??????var arrStr = document.cookie.split("; ");

? ??????for (var i = 0; i < arrStr.length; i++) {

? ??????????????var temp = arrStr[i].split("=");

? ??????????????if (temp[0] == objName){

? ???????????????????????return unescape(temp[1]);

? ? ? ? ? ? ? ? }

? ? ? ? }

? ? ? ? return "";

}


18、獲取當(dāng)前日期前后幾天日期

export function DifferenceDate(count) {

? ??????var dd = new Date();

????????dd.setDate(dd.getDate() + count);

? ??????var y = dd.getFullYear();

? ??????var m = dd.getMonth() + 1;

? ??????var d = dd.getDate();

? ??????return y + "-" + (m < 10 ? '0' + m : m) + "-" + (d < 10 ? '0' + d : d);

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末感猛,一起剝皮案震驚了整個(gè)濱河市七扰,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌陪白,老刑警劉巖颈走,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異咱士,居然都是意外死亡立由,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門序厉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)锐膜,“玉大人,你說(shuō)我怎么就攤上這事弛房〉勒担” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵文捶,是天一觀的道長(zhǎng)荷逞。 經(jīng)常有香客問(wèn)我,道長(zhǎng)粹排,這世上最難降的妖魔是什么种远? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮顽耳,結(jié)果婚禮上院促,老公的妹妹穿的比我還像新娘。我一直安慰自己斧抱,他們只是感情好常拓,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著辉浦,像睡著了一般弄抬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上宪郊,一...
    開(kāi)封第一講書(shū)人閱讀 52,457評(píng)論 1 311
  • 那天掂恕,我揣著相機(jī)與錄音,去河邊找鬼弛槐。 笑死懊亡,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的乎串。 我是一名探鬼主播店枣,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了鸯两?” 一聲冷哼從身側(cè)響起闷旧,我...
    開(kāi)封第一講書(shū)人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎钧唐,沒(méi)想到半個(gè)月后忙灼,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡钝侠,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年该园,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片帅韧。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡里初,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出弱匪,到底是詐尸還是另有隱情,我是刑警寧澤璧亮,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布萧诫,位于F島的核電站,受9級(jí)特大地震影響枝嘶,放射性物質(zhì)發(fā)生泄漏帘饶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一群扶、第九天 我趴在偏房一處隱蔽的房頂上張望及刻。 院中可真熱鬧,春花似錦竞阐、人聲如沸缴饭。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)颗搂。三九已至,卻和暖如春幕垦,著一層夾襖步出監(jiān)牢的瞬間丢氢,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工先改, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留疚察,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓仇奶,卻偏偏與公主長(zhǎng)得像貌嫡,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

推薦閱讀更多精彩內(nèi)容