9個好用的JavaScript小技巧

2020-12-16 51CTO

黑客的方法論是一種涉及不斷改進和迭代的構建方法。黑客們認為總有一天會變得更好,而且沒有什麼是永遠不能夠實現的。

真正的黑客總是用不同的方式來解決沒人關注的問題。

下面給出了一些非常強大的 JavaScript 小技巧。

1. 全部替換

我們都知道 string.Replace() 函數僅能替換掉第一個匹配項。

你可以通過在正則表達式的末尾添加 /g 來替換所有出現的內容。

  1. var example = "potato potato"
  2. console.log(example.replace(/pot/, "tom"));  
  3. // "tomato potato" 
  4. console.log(example.replace(/pot/g, "tom"));  
  5. // "tomato tomato" 

2. 提取唯一值

通過使用 Set 對象和 ... 運算符能夠使用唯一值創建一個新數組。

  1. var entries = [1, 2, 2, 3, 4, 5, 6, 6, 7, 7, 8, 4, 2, 1] 
  2. var unique_entries = [...new Set(entries)]; 
  3. console.log(unique_entries); 
  4. // [1, 2, 3, 4, 5, 6, 7, 8] 

3. 將數字轉換為字符串

只需要用 + 運算符帶和一個空字符串即可。

  1. var converted_number = 5 + ""; 
  2. console.log(converted_number); 
  3. // 5 
  4. console.log(typeof converted_number);  
  5. // string 

4. 將字符串轉換為數字

只需要用 + 運算符即可。但是要注意:它僅適用於「字符串數字」。

  1. the_string = "123"
  2. console.log(+the_string); 
  3. // 123the_string = "hello"
  4. console.log(+the_string); 
  5. // NaN 

5. 隨機排列數組中的元素

這樣最適合洗牌了:

  1. var my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]; 
  2. console.log(my_list.sort(function() { 
  3.     return Math.random() - 0.5 
  4. }));  
  5. // [4, 8, 2, 9, 1, 3, 6, 5, 7] 

6. 展平多維數組

只需使用 ... 運算符。

  1. var entries = [1, [2, 5], [6, 7], 9]; 
  2. var flat_entries = [].concat(...entries);  
  3. // [1, 2, 5, 6, 7, 9] 

7. 條件短路

只需要舉個例子就明白了:

  1. if (available) { 
  2.     addToCart(); 

通過簡單地使用變量和函數來簡化代碼:

  1. available && addToCart() 

8. 動態屬性名

一直以來,我以為必須先聲明一個對象,然後才能分配動態屬性,但是...

  1. const dynamic = 'flavour'
  2. var item = { 
  3.     name: 'Coke', 
  4.     [dynamic]: 'Cherry' 
  5. console.log(item);  
  6. // { name: "Coke", flavour: "Cherry" } 

9. 用 length 調整貨清空數組

如果要調整數組的大小:

  1. var entries = [1, 2, 3, 4, 5, 6, 7];   
  2. console.log(entries.length);  
  3. // 7   
  4. entries.length = 4;   
  5. console.log(entries.length);  
  6. // 4   
  7. console.log(entries);  
  8. // [1, 2, 3, 4] 

如果要清空數組:

  1. var entries = [1, 2, 3, 4, 5, 6, 7];  
  2. console.log(entries.length);  
  3. // 7   
  4. entries.length = 0;    
  5. console.log(entries.length);  
  6. // 0  
  7. console.log(entries);  
  8. // [] 

【責任編輯:

趙寧寧

TEL:(010)68476606】

點讚 0

相關焦點

  • 20個常用的JavaScript簡寫技巧
    任何程式語言的簡寫技巧都能夠幫助你編寫更簡練的代碼,讓你用更少的代碼實現你的目標。讓我們一個個來看看 JavaScript 的簡寫技巧吧。 1. 聲明變量 2.
  • 9 個極其強大的 JavaScript 技巧
    每一段代碼都有進一步優化的空間,每一個操作都有更便捷的技巧。 下面列舉一些非常強大的 JavaScript hack 技巧。 1. Replace All 我們知道 string.Replace() 函數只會替換第一個項目。
  • 9個極其強大的JavaScript技巧
    1.將字符串轉換為數字用 + 運算符即可。請注意這裡的用法,因為它只適用於「字符串數字」。>// [1, 2, 5, 6, 7, 9] 7.短路條件舉個例子:if (available) {     addToCart(); } 只需使用變量和函數就能縮短它:
  • 用Java語言巧妙實現javascript的運行
    Java前言在學習開發的過程中javascript是每位程式設計師小盆友都得掌握的一種方法,他們可以說是貫穿了整個Java開發的語言,下面給大家演示一下在Java中如何完美運行javascript案例,跟著小編一起來學習一下吧
  • 前端:用javascript實現一個轉盤小遊戲?
    本文轉載自【微信公眾號:趣談前端,ID:beautifulFront】經微信公眾號授權轉載,如需轉載與原文作者聯繫本文主要介紹如何使用原生javascript和Css3來實現一個在各大移動應用中經常出現的轉盤遊戲,由於改實現可以有不同方式,如果熟悉canvas的話也可以用canvas實現,本文採用js和css實現主要考慮到複雜度較小性能較好
  • JavaScript小知識:String類型
    轉義序列轉系序列也稱字符串字面量,用於表示非列印字符,後者具有其他用途的的字符:字符串特點字符串是不給變更的,如果變量中保存字符串發生了改變,那麼就會銷毀原來的字符串,然後用新的字符串填充變量let lang="java";lang=lange+"scriot";console.log(lang);//javascript我們首先創建變量lang用來保存字符串java,然後我們將lang保存的字符串改為由原先保存字符串java和新的字符串
  • 西安藍鷗丨45個有用的JavaScript技巧
    var items = [12, 548 , 'a' , 2 , 5478 , 'foo' , 8852, , 'Doe' , 2145 , 119];var  randomItem = items[Math.floor(Math.random() * items.length)];9、
  • 九個難以置信的HTML5和JavaScript實驗
    拖動藍點,讓所有線都不相交,看看你多久能解開?  一款javascript遊戲,點擊和控制藍色的盒子,讓黃色的點擊不要碰到紅色的點。       5.Sketch 3D     一款讓人驚嘆的三維射擊遊戲。
  • Javascript去除字符串中的點或其他符號
    在前端上使用javascript進行操作的。測試了兩次沒有好用,程序直接把整個字符串都進行了替換,在考慮這個是為什麼呢?javascript(請忽略此配圖)示例var ip = data.field.ip.replace(/.
  • Javascript.info - 更新頻率極高的Javascript免費開源電子教程
    更新頻率非常高,我在寫這篇文章的時候是2020年9月7日,而最新修改更新的日期是昨天。Javascript.info 首頁截圖Javascript.info 依託 learn.javascript.ru 而來的,learn.javascript.ru 是俄羅斯最大的 JavaScript 教程和學習平臺之一。
  • 初識javascript,JS的歷史_騰訊新聞
    javascript和H5的關關係 什麼是HTML5? 3.從技術的角度來看其實就是指: HTML5個 + CSS3個 +JavaScript個技術所開發的移動客戶端應用程式。
  • 寫好鋼筆字的幾個小技巧,誰用誰知道
    寫字是一種有情調的事情,而寫的一手好字,也是一種追求。那種紙墨間的美麗,可以讓人的內心寧靜致遠。而使用鋼筆練字,以墨水為載體,既有書法的韻味,也有鋼筆凌厲鮮明的筆鋒,展現著文字的魅力。其實啊,真正要寫好鋼筆字的技巧就是多練,有句古話說的好:「萬事無它,唯手熟爾」。
  • 18 個 JavaScript 入門技巧!
    最近開源了一個 Vue 組件,還不夠完善,歡迎大家來一起完善它,也希望大家能給個 star 支持一下,謝謝各位了。1. 轉字符串2.7. const 聲明變量哪些類型可以被更改如果值不想被改變時,可以使用 const:但用 const 聲明的引用類型,它裡面值是可以被更改的:8. 三等號和雙等號的區別9.
  • 100米短跑技巧 9個短跑常勝的小技巧
    跑步分為短跑,中長跑和長跑3種,不同的距離,跑步的技巧和注意事項也不一樣,因此,要想跑好100米短跑,我們需要了解有關知識。
  • 第一篇:JavaScript基本語法
    html><head><title>這是登錄頁面</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><script type="text/javascript
  • 什麼是JavaScript對象?如何創建並引用?這就告訴你!
    內置對象(本地對象):Math對象,Number對象,Date對象等,系統給我們提供好的,我們拿過來用就可以了。宿主對象:dom(文檔對象模型),bom(瀏覽器對象)。自定義對象:我們自己定義和開發的對象。
  • 職場攻略|天天要用的10個Excel小技巧
    今天濮陽人才網小編為大家分享的小技巧,不但實用,而且常用,天天都會用。掌握這10個小技巧,工作效率真的可以快速翻倍,讓你成為同事眼中的excel小高手。 3 快速調整列寬 調整列寬有兩個小技巧雙擊邊線可以讓列寬自適應調整選取所有列可以批量調整列寬。
  • 養君子蘭,用好3個小技巧,長爆盆變群蘭,一盆抽出10花箭
    主要是用好這3個小技巧哦1、用土技巧君子蘭喜歡疏鬆肥沃的土壤,一般我們會用腐葉土來種植。將植料混合均勻後,種好君子蘭,植料不必壓實,不然影響植料的透氣性哦~2、養群蘭技巧花友的君子蘭是如何變群蘭的呢?是和別人一樣抹頭嗎?其實不是滴,花友是很久不給君子蘭換盆咯,等每年新發的小芽長大,君子蘭就逐漸變成群蘭啦!許久不換盆,君子蘭怎麼還能長得如此旺呢?
  • 我的世界:幾個有用的現代風內飾小技巧
    大家好,今天我SCP基金會某人來給你們分享幾個巧妙的內飾小技巧,對大家的建築還是非常有利的,所以,看看就行了,千萬要關注。好了,廢話不多說,開始今天的正文!在我的世界這款遊戲裡,建築風格有很多種,比如說古風,現代風等等,(本人古風建築不是很擅長,希望大家多多幫助)而且在內飾技巧這一方面是非常重要的,尤其是現代風建築,讓我們一起來看看吧!
  • 適合女生的拍照技巧,輕鬆學會這9個,拍照變得好好看
    29:03 來源: 小包麻麻 舉報   女生拍照,是一件很重要的事情,只有拍得好看了心情才好,