<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          20個(gè)對JavaScript 開發(fā)人員的超級有用的技巧

          共 4652字,需瀏覽 10分鐘

           ·

          2021-09-08 01:28

          英文 | https://javascript.plainenglish.io/20-awesome-tips-for-better-and-more-professional-coding-with-javascript-2becaedb5f9
          翻譯 | 楊小二

          JavaScript 是流行編程語言之一,也是許多開發(fā)人員最喜歡的語言之一。你可以用它構(gòu)建 Web 或移動混合應(yīng)用程序,甚至是機(jī)器人開發(fā)學(xué)習(xí)。該語言對于初學(xué)者來說,也不是那么困難。
          但是,你有一些現(xiàn)實(shí)生活中的問題需要在 JavaScript 中解決。其中一些你可以快速解決,而其中一些則很棘手。
          今天,在本文中,我們將介紹 20 個(gè)技巧,這些技巧可以更好地編碼,以更好、更輕松地的方式解決 JavaScript 中的問題。這些技巧可能對專業(yè)開發(fā)人員有所幫助,但對新開發(fā)人員來說也會很有趣。
          1、數(shù)字轉(zhuǎn)換字符串/字符串轉(zhuǎn)換數(shù)字
          這個(gè)技巧很簡單,它可以幫助你將數(shù)字轉(zhuǎn)換為字符串或?qū)⒆址D(zhuǎn)換為數(shù)字。查看下面的代碼示例以了解轉(zhuǎn)換的工作原理。
          // number to stringlet num1 = 4let string1 = num1.toString();// string to numberlet string2 = "5"let num2 = Number(string2)

          2、短循環(huán)

          在 JavaScript 中,你通常知道編寫多行循環(huán),但你卻很少使用編寫僅一行的短循環(huán)。想知道怎么做?查看下面的示例代碼。

          const ProgrammingLang = ["JavaScript", "Python", "C++", "Dart", "Java"]// Long Loop Versionfor (let i = 0; i < ProgrammingLang.length; i++) {  const lang = ProgrammingLang[i];  console.log(lang);}// Short Loop Versionfor (let lang of ProgrammingLang) console.log(lang);

          3、性能計(jì)算

          這個(gè)技巧將幫助你計(jì)算代碼性能,與在 Google Chrome 上完成的性能計(jì)算相同。

          const startTime = performance.now();something();const endTime = performance.now();console.log("function took ${startTime - endTime} milliseconds");

          4、以簡單的方式交換值

          當(dāng)你需要在沒有任何額外變量(如 temp)的情況下交換值時(shí),這個(gè)技巧對你來說會很方便。這個(gè)技巧是交換值的一種簡單快捷的方法。

          let a = 5; let b = 6;[a, b] = [b, a]console.log(a) // 6console.log(b) // 5

          5、合并數(shù)組

          這個(gè)技巧將幫助你將數(shù)組合并為一個(gè)數(shù)組。查看下面的代碼以了解它是如何工作的。

          const names1 = ["Haider", "John", "Jessica"];const names2 = ["Ferb", "Emma", "Watson"];const allnames = [...names1, ...names2];console.log(allnames); // ["Haider", "John", "Jessica", "Ferb", "Emma", "Watson"]

          6、以簡單的方式刪除重復(fù)項(xiàng)

          這個(gè)技巧將幫助你在短時(shí)間內(nèi)以簡單的方式從數(shù)組中刪除所有重復(fù)項(xiàng)。

          const fruits = ["apple", "mango", "orange", "apple", "pineapple", "pineapple", "peach", "mango"]const fruiteWithoutDupli = [...new Set(fruits)];console.log(fruiteWithoutDupli) // [ "apple", "mango", "orange", "pineapple", "peach" ]

          7、驗(yàn)證給定的參數(shù)是數(shù)字

          這個(gè)技巧將向你展示如何驗(yàn)證你在函數(shù)中傳遞的參數(shù)是否為數(shù)字。

          function isNumber(num){    return !isNaN(parseFloat(num)) && isFinite(num);}isNumber(34) // trueisNumber('JavaScript') // false

          8、驗(yàn)證給定參數(shù)是一個(gè)數(shù)組

          本技巧將向你展示如何驗(yàn)證在函數(shù)中傳遞的參數(shù)是否為數(shù)組。

          function isArray(arr){    return Object.prototype.toString.call(arr) === '[object Array]' ;}isArray([34]) // trueisArray('JavaScript') // false

          9、清空數(shù)組

          這是在一行代碼中完全清空數(shù)組的最酷技巧。查看下面的代碼以了解它是如何工作的。

          var array1 = [ "JavaScript", "Python", "C++" ];array1.length = 0;console.log(array1) // [] array will become empty

          10、從數(shù)組中獲取最大值和最小值

          本技巧將指導(dǎo)你以快速簡便的方式從數(shù)組中查找最小值和最大值。現(xiàn)在你不需要為此問題編寫長循環(huán)即可實(shí)現(xiàn)這一功能。

          var  numbers = [1, 6, 2, 8, 10, 11 ,24, 3, 9];var max = Math.max.apply(Math, numbers); // 24var min = Math.min.apply(Math, numbers); // 1

          11、 數(shù)組中的隨機(jī)項(xiàng)

          在本技巧中,我將向你展示如何從數(shù)組中獲取隨機(jī)項(xiàng)。這個(gè)隨機(jī)項(xiàng)可以是字符串或整數(shù)或任何數(shù)據(jù)類型。

          var items = [1, 4, 5, 6, 7, 8];var  randomItem = items[Math.floor(Math.random() * items.length)];console.log(randomItem) // 4

          12、錯(cuò)誤處理

          有時(shí)會出現(xiàn)不尋常的錯(cuò)誤,并使開發(fā)人員處理這些錯(cuò)誤成為一個(gè)問題。這個(gè)技巧在這方面很有用。我將向你展示如何在不終止整個(gè)程序的情況下使用 try-except 語句處理錯(cuò)誤。

          var items = [1, 4, 5, 6, 7, 8];try {  console.log(items[2])}catch (error){  console.log("we got an error")}

          13、 縮短你的數(shù)組

          縮短數(shù)組的一個(gè)好方法是使用長度方法。這個(gè)技巧將指導(dǎo)你使用長度方法來縮短數(shù)組,我認(rèn)為這是一種快速簡便的方法。但這一種破壞性的方式,這意味著你可能會丟失數(shù)組中其他已刪除的元素。

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

          14、 避免在循環(huán)中使用 For —

          你應(yīng)該避免使用 for-in 循環(huán)。取而代之的是,你應(yīng)該使用比 for-in 循環(huán)快得多的普通循環(huán)。

          // for in loopvar numbers = [1, 3, 4, 5]var sum = 0;  for (var i in numbers) {      sum += numbers[i];  }// instead use thisvar numbers = [1, 3, 4, 5]var sum = 0;  for(var i=0; i < numbers.length; i++){  sum +=numbers[i];}

          15、使用map函數(shù)在數(shù)組中循環(huán)

          循環(huán)數(shù)組是一個(gè)耗時(shí)且代價(jià)高昂的問題,但我們可以使用 map 函數(shù)以更快的方式完成此操作。本技巧將向你展示如何使用 map 函數(shù)循環(huán)遍歷數(shù)組。

          var squares = [1,2,3,4].map(function (val) {      console.log(val)}); // Output// 1// 2// 3// 4

          16、逗號運(yùn)算符

          這個(gè)技巧將幫助你理解逗號運(yùn)算符。逗號運(yùn)算符 (,) 計(jì)算其每個(gè)操作數(shù)(從左到右)并返回最后一個(gè)操作數(shù)的值。

          var a = 1var b = (a++, 3)console.log(a) // 2  value of 'a' is increamentedconsole.log(b) // 3

          17、使用正則表達(dá)式替換所有字符

          我們可以使用正則表達(dá)式替換字符串中的所有字符。以下將向你展示如何做到這一點(diǎn)。

          var string = "JavaScript"; 
          console.log(string.replace(/Script/, "code")); //Javacode

          18、數(shù)組中所有值的總和

          如你所知,我們必須使用循環(huán)來計(jì)算數(shù)組中所有值的總和。但是,這個(gè)技巧將幫助你在沒有任何循環(huán)的情況下計(jì)算數(shù)組值的總和。

          var values = [1, 2, 5, 6];var sum = values.reduce((x, y) => x + y);console.log(sum); // 14

          19、 打亂數(shù)組的元素

          這個(gè)技巧很棒,將指導(dǎo)你如何以簡單的方式打亂數(shù)組的元素。

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

          20、等號 (== , ===)

          在 JavaScript 中,我們不使用“==”來比較值或數(shù)據(jù);我們總是使用“===”。如果你嘗試使用雙重賦值運(yùn)算符,則會給你帶來問題。

          // wrong wayif(22 == '22'){  console.log(true)}//correct wayif(22 === "22"){  console.log(true)}else{  console.log(false)}

          最后想法

          好吧,我知道還有許多其他有關(guān)于JvavScript的技巧,但是,今天這20個(gè)技巧對我來說很有用(我認(rèn)為它們對初學(xué)者開發(fā)人員很有幫助)。

          如果我錯(cuò)過了任何重要的JvavScript技巧,請?jiān)诹粞詤^(qū)告訴我,讓我知道,非常感謝。

          在此,我希望你將來會發(fā)現(xiàn)這篇文章對你有所幫助。

          祝你能夠快樂的編寫JavaScript!


          學(xué)習(xí)更多技能

          請點(diǎn)擊下方公眾號


          瀏覽 30
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日本免费亚洲 | 中文字幕tⅴ | 精品一区二区三区三区 | 国产一级a毛一级a看… | 日韩天堂网 |