JavaScript簡寫技巧總結(jié)
在日常工作中,JavaScript一些常用的簡寫技巧,將直接影響到我們的開發(fā)效率,現(xiàn)將常用技巧整理如下:
1. 空(null, undefined)驗證
當(dāng)我們創(chuàng)建了一個新的變量,我們通常會去驗證該變量的值是否為空(null)或則未定義(undefined)。這對于JavaScript編程來說,是一個經(jīng)常要考慮到的驗證。
非優(yōu)化代碼:
if (variable1 !== null || variable1 !== undefined || variable1 !== '') { let variable2 = variable1; }
優(yōu)化代碼:
let variable2 = variable1 || ''
在谷歌瀏覽器開發(fā)者面板的控制臺下:
2. 數(shù)組
非優(yōu)化代碼:
let a = new Array(); a[0] = "myString1"; a[1] = "myString2"; a[2] = "myString3";
優(yōu)化代碼:
let a = ["myString1", "myString2", "myString3"];
3.if true .. else 的優(yōu)化
非優(yōu)化代碼:
let big; if (x > 10) { big = true; } else { big = false; }
優(yōu)化代碼:
let big = x > 10 ? true : false;
在谷歌瀏覽器開發(fā)者面板的控制臺下:
4.變量聲明
非優(yōu)化代碼:
let x; let y; let z = 3;
優(yōu)化代碼:
let x, y, z=3;
5.賦值語句的簡化
非優(yōu)化代碼:
x=x+1; minusCount = minusCount - 1; y=y*10;
優(yōu)化代碼:
x++; minusCount --; y*=10;
假設(shè) x=10,y=5,那么基本的算術(shù)操作可以使用如下的簡寫方式:
在谷歌瀏覽器開發(fā)者面板的控制臺下:
6.避免使用RegExp對象
非優(yōu)化代碼:
var re = new RegExp("\d+(.)+\d+","igm"), result = re.exec("padding 01234 text text 56789 padding"); console.log(result); //"01234 text text 56789"
優(yōu)化代碼:
var result = /d+(.)+d+/igm.exec("padding 01234 text text 56789 padding"); console.log(result); //"01234 text text 56789"
7.If 條件優(yōu)化
非優(yōu)化代碼:
if (likeJavaScript === true)
優(yōu)化代碼:
if (likeJavaScript)
8.charAt()的替代品
非優(yōu)化代碼:
"myString".charAt(0);
優(yōu)化代碼:
"myString"[0]; // 返回 'm'
到此這篇關(guān)于JavaScript簡寫技巧的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JS組件Form表單驗證神器BootstrapValidator
做Web開發(fā)的我們,表單驗證是再常見不過的需求了。友好的錯誤提示能增加用戶體驗。今天就來看看bootstrapvalidator如何使用,感興趣的小伙伴們可以參考一下2016-01-01使用JS監(jiān)聽鍵盤按下事件(keydown event)
這篇文章主要介紹了使用JS監(jiān)聽鍵盤按下事件(keydown event),本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-11-11使用JavaScript獲取URL中的參數(shù)(兩種方法)
這篇文章主要介紹了使用JavaScript獲取URL中的參數(shù)(兩種方法)的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-11-11javascript中關(guān)于執(zhí)行環(huán)境的雜談
如你所知,javascript里執(zhí)行環(huán)境是作為一個最核心的概念存在的。相信廣大FE筒子們對于這個概念不會陌生,它定義了變量或函數(shù)有權(quán)訪問其他數(shù)據(jù)范圍以及其行為。2011-08-08setTimeout內(nèi)不支持jquery的選擇器的解決方案
在JS中無論是setTimeout還是setInterval,在使用函數(shù)名作為調(diào)用句柄時都不能帶參數(shù),而在許多場合必須要帶參數(shù),這就需要想方法解決。2015-04-04