js常用小技巧

switch優(yōu)化

    // 優(yōu)化前:
    const fun = function(){
      console.log('執(zhí)行方法')
    }
    switch (type) 
    {
       case 0:
           fun();
           break;
      case 1:
           fun();
           break;
       case 2:
          fun();
          break;
        case 3:
          fun();
          break;
    }

   // 優(yōu)化后:
   // 條件作為屬性名,處理邏輯作為屬性值
    const fun = function(){
      console.log('執(zhí)行方法')
    }
    const options = new Map([
        [0,fun],
        [1,fun],
        [2,fun],
        [3,fun]
     ])
    const getFun = options.get(1) 
    getFun && getFun()

多值匹配優(yōu)化

 // 優(yōu)化前:
if (value === 1 || value === 'one' || value === 2 || value === 'two') {
  // Execute some code
}
 // 優(yōu)化后:
if ([1, 'one', 2, 'two'].includes(value)) { 
    // Execute some code 
}

隨機生成長度為10的字母數(shù)字字符串

Math.random().toString(36).substring(2);

1秒更新一次時間

setInterval(() => document.body.innerHTML = new Date().toLocaleString().slice(10,18))

隨機生成 16 進制顏色

'#' + Math.floor(Math.random() * 0xffffff).toString(16).padEnd(6, '0');

取整

const a = ~~1.11   // 1
const b = 1.11 | 0   // 1
const c = 1.11 >> 0   // 1

尋找數(shù)組中的最大和最小值

const arr = [2, 8, 15, 4];
Math.max(...arr); // 15
Math.min(...arr); // 2

格式化金額

var num= "-12345.1";
var format = num.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
console.log(format); // -12,345.1

變量值交換

const a = 1;
const b = 2;
[a, b] = [b, a];
console.log(a); // 2

刪除對象屬性

let obj = {a: 1, b: 2, c: 3, d: 4};
let {a, b, ...newObj} = obj;
console.log(newObj); // {c: 3, d: 4}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 原文git地址 https://github.com/TigerHee/shareJS 小數(shù)取整: 1.234 |...
    tigerHee閱讀 305評論 0 1
  • 簡介 ECMAScript是JavaScript的標準,JavaScript實現(xiàn)了ECMAScript,ECMAS...
    Zindex閱讀 449評論 0 3
  • 前言 JavaScript 是一門弱類型語言,其使用非常廣泛。 這里我總結(jié)了自己日常使用中的 Tips ,不斷更新...
    追星人小豪閱讀 244評論 0 0
  • 變量 會變化的量,是用來存儲數(shù)據(jù)的容器。 命名規(guī)范:可以由數(shù)字、字母、下劃線、$組成,不能以數(shù)字開頭;嚴格區(qū)分大小...
    magic_pill閱讀 714評論 0 2
  • 前端常用 工具方法 1.郵箱 2.手機號碼 3.電話號碼 4.是否url地址 5.是否字符串 6.是否數(shù)字 7.是...
    甘道夫老矣閱讀 224評論 0 0

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