奇酷教育-Python培训|UI培训|WEB大前端培训|Unity3D培训|HTML5培训|人工智能培训|JAVA开发的教育品牌

您現在所在的位置:首頁 >關于奇酷 > 行業動態 > 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命令
 
  自定義插件
主站蜘蛛池模板: 防火阀、排烟防火阀、电动防火阀产品生产销售商-德州凯亿空调设备有限公司 | 大型果蔬切片机-水果冬瓜削皮机-洗菜机切菜机-肇庆市凤翔餐饮设备有限公司 | 蜜蜂职场文库_职场求职面试实用的范文资料大全 | 直流电能表-充电桩电能表-导轨式电能表-智能电能表-浙江科为电气有限公司 | 避光流动池-带盖荧光比色皿-生化流动比色皿-宜兴市晶科光学仪器 东莞爱加真空科技有限公司-进口真空镀膜机|真空镀膜设备|Polycold维修厂家 | 冷镦机-多工位冷镦机-高速冷镦机厂家-温州金诺机械设备制造有限公司 | 北京企业宣传片拍摄_公司宣传片制作-广告短视频制作_北京宣传片拍摄公司 | 企业管理培训,企业培训公开课,企业内训课程,企业培训师 - 名课堂企业管理培训网 | 不锈钢监控杆_监控立杆厂家-廊坊耀星光电科技有限公司 | 防腐木批发价格_深圳_惠州_东莞防腐木厂家_森源(深圳)防腐木有限公司 | 大学食堂装修设计_公司餐厅效果图_工厂食堂改造_迈普装饰 | 南京和瑞包装有限公司| 南京泽朗生物科技有限公司-液体饮料代加工_果汁饮料代加工_固体饮料代加工 | 无线对讲-无线对讲系统解决方案-重庆畅博通信 | 长沙中央空调维修,中央空调清洗维保,空气能热水工程,价格,公司就找维小保-湖南维小保环保科技有限公司 | 重庆磨床过滤机,重庆纸带过滤机,机床伸缩钣金,重庆机床钣金护罩-重庆达鸿兴精密机械制造有限公司 | 深圳快餐店设计-餐饮设计公司-餐饮空间品牌全案设计-深圳市勤蜂装饰工程 | 减速机三参数组合探头|TSM803|壁挂式氧化锆分析仪探头-安徽鹏宸电气有限公司 | 轻型地埋电缆故障测试仪,频响法绕组变形测试仪,静荷式卧式拉力试验机-扬州苏电 | 钢衬四氟管道_钢衬四氟直管_聚四氟乙烯衬里管件_聚四氟乙烯衬里管道-沧州汇霖管道科技有限公司 | 污水提升器,污水提升泵,地下室排水,增压泵,雨水泵,智能供排水控制器-上海智流泵业有限公司 | 无刷电机_直流无刷电机_行星减速机-佛山市藤尺机电设备有限公司 无菌检查集菌仪,微生物限度仪器-苏州长留仪器百科 | 商标转让-购买商标专业|放心的商标交易网-蜀易标商标网 | 河北中仪伟创试验仪器有限公司是专业生产沥青,土工,水泥,混凝土等试验仪器的厂家,咨询电话:13373070969 | 根系分析仪,大米外观品质检测仪,考种仪,藻类鉴定计数仪,叶面积仪,菌落计数仪,抑菌圈测量仪,抗生素效价测定仪,植物表型仪,冠层分析仪-杭州万深检测仪器网 | 船老大板材_浙江船老大全屋定制_船老大官网 | 无纺布包装机|径向缠绕包装机|缠绕膜打包机-上海晏陵智能设备有限公司 | 代理记账_公司起名核名_公司注册_工商注册-睿婕实业有限公司 | 工业车间焊接-整体|集中除尘设备-激光|等离子切割机配套除尘-粉尘烟尘净化治理厂家-山东美蓝环保科技有限公司 | 加热制冷恒温循环器-加热制冷循环油浴-杭州庚雨仪器有限公司 | 厂房出售_厂房仓库出租_写字楼招租_土地出售-中苣招商网-中苣招商网 | 北京软件开发_软件开发公司_北京软件公司-北京宜天信达软件开发公司 | 河南生物显微镜,全自动冰冻切片机-河南荣程联合科技有限公司 | 希望影视-高清影视vip热播电影电视剧免费在线抢先看 | 高通量组织研磨仪-多样品组织研磨仪-全自动组织研磨仪-研磨者科技(广州)有限公司 | 单级/双级旋片式真空泵厂家,2xz旋片真空泵-浙江台州求精真空泵有限公司 | 深圳活动策划公司|庆典策划|专业公关活动策划|深圳艺典文化传媒 重庆中专|职高|技校招生-重庆中专招生网 | 齿轮减速机_齿轮减速电机-VEMT蜗轮蜗杆减速机马达生产厂家瓦玛特传动瑞环机电 | 膏剂灌装旋盖机-眼药水灌装生产线-西林瓶粉剂分装机-南通博琅机械科技 | 都江堰招聘网-都江堰人才网 都江堰人事人才网 都江堰人才招聘网 邢台人才网_邢台招聘网_邢台123招聘【智达人才网】 | 丝印油墨_水性油墨_环保油墨油漆厂家_37国际化工 |