成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JavaScript常用工具函數(shù)

Chiclaim / 1975人閱讀

摘要:深拷貝函數(shù)判斷子元素是否為對象,如果是,遞歸復(fù)制如果不是,簡單復(fù)制時間戳轉(zhuǎn)為格式化時間時間戳轉(zhuǎn)為格式化時間時間戳?xí)r間格式格式包括年月日年月日時分年月日時分秒示例年月日年月日小于補

1.深拷貝函數(shù)

function deepClone(obj) {
  let objClone = Array.isArray(obj) ? [] : {};
  if (obj && typeof obj === "object") {
    for (let key in obj) {
      if (obj.hasOwnProperty(key)) {
        //判斷ojb子元素是否為對象,如果是,遞歸復(fù)制
        if (obj[key] && typeof obj[key] === "object") {
          objClone[key] = deepClone(obj[key]);
        } else {
          //如果不是,簡單復(fù)制
          objClone[key] = obj[key];
        }
      }
    }
  }
  return objClone;
}

2.時間戳轉(zhuǎn)為格式化時間

/**
 * 時間戳轉(zhuǎn)為格式化時間
 * @Author   chenjun
 * @DateTime 2017-11-10
 * @param    {[date]}   timestamp [時間戳]
 * @param    {[string]}   formats   [時間格式]
 */
function formatDate(timestamp, formats) {
    /*
    formats格式包括
    1. Y-M-D
    2. Y-M-D h:m:s
    3. Y年M月D日
    4. Y年M月D日 h時m分
    5. Y年M月D日 h時m分s秒
    示例:console.log(formatDate(1500305226034, "Y年M月D日 h:m:s")) ==> 2017年07月17日 23:27:06
     */
    formats = formats || "Y-M-D";

    var myDate = timestamp ? new Date(timestamp) : new Date();

    var year = myDate.getFullYear();
    var month = formatDigit(myDate.getMonth() + 1);
    var day = formatDigit(myDate.getDate());

    var hour = formatDigit(myDate.getHours());
    var minute = formatDigit(myDate.getMinutes());
    var second = formatDigit(myDate.getSeconds());

    return formats.replace(/Y|M|D|h|m|s/g, function(matches) {
        return ({
            Y: year,
            M: month,
            D: day,
            h: hour,
            m: minute,
            s: second
        })[matches];
    });
    // 小于10補0
    function formatDigit(n) {
        return n.toString().replace(/^(d)$/, "0$1");
    };
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/108536.html

相關(guān)文章

  • JavaScript 是如何工作的:解析、抽象語法樹(AST)+ 提升編譯速度5個技巧

    摘要:無論你使用的是解釋型語言還是編譯型語言,都有一個共同的部分將源代碼作為純文本解析為抽象語法樹的數(shù)據(jù)結(jié)構(gòu)。和抽象語法樹相對的是具體語法樹,通常稱作分析樹。這是引入字節(jié)碼緩存的原因。 這是專門探索 JavaScript 及其所構(gòu)建的組件的系列文章的第 14 篇。 想閱讀更多優(yōu)質(zhì)文章請猛戳GitHub博客,一年百來篇優(yōu)質(zhì)文章等著你! 如果你錯過了前面的章節(jié),可以在這里找到它們: JavaS...

    raoyi 評論0 收藏0
  • JavaScript 工作原理之十四-解析,語法抽象樹及最小化解析時間的 5 條小技巧

    摘要:事實是只是部分語言的不同表示法?;谶@些,解析器會進行立即或者懶解析。然而,解析器做了完全不相關(guān)的額外無用功即解析函數(shù)。這里不解析函數(shù),該函數(shù)聲明了卻沒有指出其用途。所以之前的例子,解析器實際上 原文請查閱這里,本文采用知識共享署名 4.0 國際許可協(xié)議共享,BY Troland。 本系列持續(xù)更新中,Github 地址請查閱這里。 這是 JavaScript 工作原理的第十四章。 概...

    ZweiZhao 評論0 收藏0
  • JavaScript 工作原理之十四-解析,語法抽象樹及最小化解析時間的 5 條小技巧

    摘要:事實是只是部分語言的不同表示法?;谶@些,解析器會進行立即或者懶解析。然而,解析器做了完全不相關(guān)的額外無用功即解析函數(shù)。這里不解析函數(shù),該函數(shù)聲明了卻沒有指出其用途。所以之前的例子,解析器實際上 原文請查閱這里,本文采用知識共享署名 4.0 國際許可協(xié)議共享,BY Troland。 本系列持續(xù)更新中,Github 地址請查閱這里。 這是 JavaScript 工作原理的第十四章。 概...

    xuxueli 評論0 收藏0
  • JavaScript 工作原理之十四-解析,語法抽象樹及最小化解析時間的 5 條小技巧

    摘要:事實是只是部分語言的不同表示法。基于這些,解析器會進行立即或者懶解析。然而,解析器做了完全不相關(guān)的額外無用功即解析函數(shù)。這里不解析函數(shù),該函數(shù)聲明了卻沒有指出其用途。所以之前的例子,解析器實際上 原文請查閱這里,本文采用知識共享署名 4.0 國際許可協(xié)議共享,BY Troland。 本系列持續(xù)更新中,Github 地址請查閱這里。 這是 JavaScript 工作原理的第十四章。 概...

    jsliang 評論0 收藏0
  • 前端每周清單半年盤點之 JavaScript

    摘要:前端每周清單專注前端領(lǐng)域內(nèi)容,以對外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點分為新聞熱點開發(fā)教程工程實踐深度閱讀開源項目巔峰人生等欄目。背后的故事本文是對于年之間世界發(fā)生的大事件的詳細介紹,闡述了從提出到角力到流產(chǎn)的前世今生。 前端每周清單專注前端領(lǐng)域內(nèi)容,以對外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點;分為新聞熱點、開發(fā)教程、工程實踐、深度閱讀、開源項目、巔峰人生等欄目。歡迎...

    Vixb 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<