97超碰碰碰_91热播_91国产免费视频_91视频合集_国产精品白丝jk白祙_国产精品久免费的黄网站

您現在所在的位置:首頁 >關于奇酷 > 行業動態 > 5個實用JS庫99%的人可能都不知道

5個實用JS庫99%的人可能都不知道

來源:奇酷教育 發表于:

5個實用JS庫99%的人可能都不知道

  前言
 
  作為一名前端開發者,我通過這些JavaScript庫大大提高了自己的效率,比如格式化日期、處理URL參數、調試手機網頁等。
 
 
  1.使用“Day.js”格式化日期和時間
 
  地址:https://day.js.org/en/
 
  作為一名開發人員,我受夠了在 JavaScript 中操作日期和時間,因為它太麻煩了。
 
  比如我們要打印當前的日期和時間,就需要寫一大段代碼來完成。
 
  const getDate = () => {
 
    const fillZero = (t) => {
 
      return t < 10 ? `0${t}` : t
 
    }
 
    const d = new Date()
 
    const year = d.getFullYear()
 
    const month = fillZero(d.getMonth() + 1)
 
    const day = fillZero(d.getDate())
 
    const hour = fillZero(d.getHours())
 
    const minute = fillZero(d.getMinutes())
 
    const second = fillZero(d.getSeconds())
 
    return `${year}-${month}-${day} ${hour}:${minute}:${second}`
 
  }
 
  console.log(getDate()) // 2022-05-09 07:19:14
 
  幸運的是,使用 Day.js 只需一行代碼即可完成。
 
  console.log(dayjs().format('YYYY-MM-DD HH:mm:ss')) // 2022-05-09 07:19:14
 
  注意:“Day.js 是一個極簡主義的 JavaScript 庫,它使用大部分與 Moment.js 兼容的 API 為現代瀏覽器解析、驗證、操作和顯示日期和時間。
 
  如果你使用過 Moment.js,那么,使用Day.js,你也不會覺得很難。”
 
 
  2.使用“qs.js”格式化URL參數
 
  地址:https://github.com/ljharb/qs
 
  我們為了獲取“URL”的參數,也許會寫一個這樣的函數。
 
  const formatSearch = () => {
 
    window.location.search.slice(1).split('&').reduce((res, it) => {
 
      const [ key, value ] = it.split('=')
 
      res[ key ] = value
 
      return res
 
    }, {})
 
  }
 
  // https://medium.com?name=fatfish&age=100
 
  const search = formatSearch() // { name: 'fatfish', age: 100 }
 
  // use qs.js to format
 
  const search2 = qs.parse(window.location.search.slice(1)) // { name: 'fatfish', age: 100 }
 
  但是,現在我們如果要實現這樣一個新功能,就會變得簡單很多。
 
  如果我們想在“https://medium.com”中添加姓名和年齡兩個參數。
 
  // 1. url = https://medium.com
 
  // 2. params = { name: 'fatfish', age: 100 }
 
  const splitSearch = (url, params) => {
 
    const search = Object.entries(params).map((it) => it.join('=')).join('&')
 
    return `${url}?${search}`
 
  }
 
  const url = 'https://medium.com'
 
  const params = { name: 'fatfish', age: 100 }
 
  console.log(splitSearch(url, params)) // https://medium.com?name=fatfish&age=100
 
  // use qs.js to stringify url
 
  console.log(`${url}?${qs.stringify(params)}`) // https://medium.com?name=fatfish&age=100
 
 
  3.使用“js-cookie.js”讀寫cookies
 
  地址:https://github.com/js-cookie/js-cookie
 
  我們都知道在 JavaScript 中操作 cookies 不是一件簡單的事情,為了提高你的工作效率我強烈推薦“js-cookie.js”,它是一個簡單、輕量級的 JavaScript API,用于處理 cookies。
 
  Cookies.set('name', 'fatfish', { expires: 10 })
 
  Cookies.get('name') // fatfish
 
 
  4. 為什么選擇 Lodash?
 
  地址:https://github.com/lodash/lodash
 
  先來看看Lodash的介紹:
 
  Lodash 通過消除處理數組、數字、對象、字符串等的麻煩,使 JavaScript 變得更容易。Lodash 的模塊化方法非常適合:
 
  迭代數組、對象和字符串
 
  操縱和測試值
 
  創建復合函數
 
  // 1. Flatten the array
 
  _.flattenDeep([ 1, [ 2, [ 3, [  4, [ 5 ]] ] ] ]) // [1, 2, 3, 4, 5]
 
  // 2. More convenient object traversal
 
  _.each({ name: 'fatfish', age: 100 }, (val, key) => {
 
    console.log(val, key) 
 
    // fatfish name
 
    // 100 'age'
 
  })
 
  // 3. ...
 
 
  5、在移動端使用“Vconsole”調試網頁
 
  地址:https://github.com/Tencent/vConsole
 
  在移動設備上調試網頁非常困難,但有了“Vconsole”,一切都會變得容易得多。我們可以通過掃描此二維碼或點擊網址(http://wechatfe.github.io/vconsole/demo.html)來體驗其功能。
 
  
 
  TIP: 與chrome瀏覽器的devtools類似,Vconsole提供了以下功能幫助你更好的調試網頁。
 
  日志:console.log、info、error、…...
 
  網絡:XMLHttpRequest、Fetch、sendBeacon
 
  元素:HTML 元素樹
 
  存儲:Cookies、LocalStorage、SessionStorage
 
  手動執行JS命令
 
  自定義插件
主站蜘蛛池模板: 日本边添边摸边做边爱 | 中文幕无线码中文字蜜桃 | 欧美日韩亚洲综合久久久 | 国产成人精品高清不卡在线 | 天河影院在线观看 | 一级毛片全部免费播放 | 国产精品18久久久久久麻辣 | 又粗又硬整进去好爽视频 | 免费观看的毛片手机视频 | 亚洲国产高清视频 | 性一交一乱一伧国产女士spa | 欧美日本中文 | 日韩午夜网站 | 韩国免费高清一级 | 精品久久精品久久 | 亚洲日韩爆乳中文字幕欧美 | 男女一级做片a性视频 | 久久夜色精品国产欧美乱 | 长腿校花无力呻吟娇喘的视频 | 一区二区三区精品国产欧美 | 欧美性极品高清 | 富二代精产国品在线播放 | 国产电影在线观看视频 | 久久一区二区三区不卡 | 韩日午夜在线资源一区二区 | 精品久久久久久成人av | 成年人午夜视频 | 久久久久人妻一区精品性色av | 中文字幕在线播放 | 久久精品国产亚洲av四虎 | 老熟女高潮喷水了 | 偷看农村妇女牲交 | 漂亮人妻被黑人久久精品 | 天天夜碰日日摸日日澡性色av | 久久精品二三区 | 久久精品亚洲99一区二区 | 国产69精品久久久久99尤物 | 亚洲中文字幕无码一区二区三区 | 欧美激情欧美狂野欧美精品免费 | 国产一区二区不卡老阿姨 | 欧美交a欧美精品喷水 |