常用的JS方法

1.獲取url中的參數(shù)
function getUrlParam (url, name) {
  var reg = new RegExp('[?&]' + name + '=([^&#]+)')
  var query = url.match(reg)
  return query ? query[1] : null
}
//例子:
var url = 'https:www.baidu.com?appId=123&appSecret=mima'
console.log(getUrlParam(url, 'appSecret')) 
// 打印結(jié)果為 mima
2.判斷某一元素是否在指定數(shù)組中
function isExitElement (ele, eles) {
  return eles.filter(e => {
    return e === ele
  }).length > 0
}
//例子:
var val = 'a'
var array = ['a', 'b', 'c', 'd']
console.log(isExitElement(val, array)) 
// 打印結(jié)果為true
3.格式化時(shí)間
function formatDate (date, fmt) {
  if (/(y+)/.test(fmt)) {
    fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
  }
  let o = {
    'M+': date.getMonth() + 1,
    'd+': date.getDate(),
    'h+': date.getHours(),
    'm+': date.getMinutes(),
    's+': date.getSeconds()
  }
  for (let k in o) {
    if (new RegExp(`(${k})`).test(fmt)) {
      let str = o[k] + ''
      fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str))
    }
  }
  return fmt
}
function padLeftZero (str) {
  return ('00' + str).substr(str.length)
}
4.毫秒值轉(zhuǎn)換為時(shí)間
function formatDateTime (inputTime) {
  var date = new Date(inputTime)
  var y = date.getFullYear()
  var m = date.getMonth() + 1
  m = m < 10 ? ('0' + m) : m
  var d = date.getDate()
  d = d < 10 ? ('0' + d) : d
  var h = date.getHours()
  h = h < 10 ? ('0' + h) : h
  var minute = date.getMinutes()
  var second = date.getSeconds()
  minute = minute < 10 ? ('0' + minute) : minute
  second = second < 10 ? ('0' + second) : second
  return y + '-' + m + '-' + d + ' ' + h + ':' + minute + ':' + second
}
5.動(dòng)態(tài)引入js文件和動(dòng)態(tài)引入css文件
/**
 * 動(dòng)態(tài)引入js文件
 * @param inc
 */
function _IncludeScript (inc) {
  var script = document.createElement('script')
  script.type = 'text/javascript'
  script.src = inc
  document.getElementsByTagName('head')[0].appendChild(script)
}

/**
 * 動(dòng)態(tài)引入css文件
 * @param inc
 */
function _IncludeCss (inc) {
  var script = document.createElement('link')
  script.type = 'text/css'
  script.src = inc
  document.getElementsByTagName('head')[0].appendChild(script)
}
6.base64的圖片url數(shù)據(jù)轉(zhuǎn)換為Blob
/**
 * 將以base64的圖片url數(shù)據(jù)轉(zhuǎn)換為Blob
 * @param urlData 用url方式表示的base64圖片數(shù)據(jù)
 */
function convertBase64UrlToBlob (urlData) {

  var bytes = window.atob(urlData.split(',')[1])        // 去掉url的頭,并轉(zhuǎn)換為byte

  // 處理異常,將ascii碼小于0的轉(zhuǎn)換為大于0
  var ab = new ArrayBuffer(bytes.length)
  var ia = new Uint8Array(ab)
  for (var i = 0; i < bytes.length; i++) {
    ia[i] = bytes.charCodeAt(i)
  }

  var blob = new Blob([ab], {type: 'image/png'})

  blob.name = 'picCam.jpg'
  return blob
}
7.判斷某個(gè)div中上傳的是否為圖片
var fileTypes = ['.jpg', '.jpeg', '.bmp', '.png', '未選擇']
function isPic (id) {
  var filelist = $('#' + id + ':file')
  var flag
  for (var i = 0; i < filelist.length; i++) {
    var name = filelist[i].name
    var fileType = name.substring(name.lastIndexOf('.'))
    var result = $.inArray(fileType, fileTypes)
    if (result === -1) {
      flag = true
      break
    }
  }
  return flag
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容