2022年6月27日 星期一

初探 JavaScript 的 Error 物件

 初探 JavaScript 的 Error 物件

前言

  最近學習 JavaScript 2022 裡的 Error() 類別,在此把學習的過程做個紀錄。


內容

  早期的 Error 會像以下來使用

try{
  throw "Something is wrong!";
} catch(e){
  console.log(e); // Something is wrong!
}


拋擲錯誤的物件,也就是字串會在 catch() 內被當成引數"e",在透過列印將錯誤訊息印在 console , JavaScript 2022 的新標準多了 Error() 物件可以用用法如下

try{
  throw new Error('Something is wrong!');
} catch(e){
  console.log(e.message); // Something is wrong!
}


用法和舊的一樣,只是多了一個專門拋擲錯誤的類別"Error",透過"message",可以取得想要顯示的訊息,看了一下 [ developer.mozilla.org ] Error() constructor ,裡面有"fileName"與"lineNumber"兩個屬性,但是目前是不一定支援,要看瀏覽器而定,感覺是個可有可無的類別,不過畢竟是官方提供的,以後如果有擴充功能就會加在這裡,如果可以替代現有的錯誤回報最好還是做替換的動作。


參考資料

[ developer.mozilla.org ] Error() constructor

[medium.com/@seed45699 ] JS try catch 使用方式

2022年6月20日 星期一

JavaScript 2022 的陣列新用法

 JavaScript 2022 的陣列新用法

前言

   JavaScript 2022 的陣列支援一個新的函式"at()",這個函式支援用負值索引提取內容,抽空做個學習,在此做個紀錄。


內容

  範例如下

let ar = [ 'A' , 'B' , 'C'];
//Out of array...
console.log( ar.at(-4) );//undefined
//Invverse explore array
for( let i = -1 ; i >= -ar.length ; i-- ){
  console.log( ar.at(i) );
}
//"C"
//"B"
//"A"


範例利用新提供的 at() 來提取陣列的內容,當數值是正值的時候,結果和直接用"[]"提取時一樣,但這個函式提供父的索引值來提取,當用負值索引提取時要注意是從"-1"開始提取最後一個數值,所以範例超出所引的數值是"-4",而非"-3",最後順勢寫了個倒著瀏覽陣列的迴圈。


參考資料

[ exploringjs.com ] 4 New JavaScript features

2022年6月13日 星期一

正則表達式的 URL 解法

 正則表達式的 URL 解法

前言

  URL 是個常見的正則表達式的應用,如果自己寫很浪費時間,所以在網上找了個使用範例,在此做個紀錄。


內容

  在 [ www.796t.com ] 匹配URL的正則表示式解析 裡可以找到,實際的運用如下

URL 的正則表達式


圖中的正則表達式使用的是"((http|ftp|https)://)(([a-zA-Z0-9\._-]+\.[a-zA-Z]{2,6})|([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}))(:[0-9]{1,4})*(/[a-zA-Z0-9\&%_\./-~-]*)?",如果不需要通訊協定只需把前方的"((http|ftp|https)://)"截掉即可。


參考資料

[ www.796t.com ] 匹配URL的正則表示式解析

[ coding.tools ] 正則表達式在線測試工具

2022年6月6日 星期一

正則表達式的 E-mail 解法

 正則表達式的 E-mail 解法

前言

  最近臨時需要驗證 E-mail ,本想很簡單直接上網找了幾個現成的來用,但發現都有些小毛病,最後找到一個比較正確的,在此做個紀錄。


內容

  在 [ codertw.com ] 郵箱/郵件地址的正則表達式及分析(JavaScript,email,regex) 裡可以找到可用的正則表達式,實際的應用如下

E-mail 的正則表達式


使用的正則表達式是"([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})",這個結果實驗後可以符合大多狀況。


參考資料

[ codertw.com ] 郵箱/郵件地址的正則表達式及分析(JavaScript,email,regex)

[ coding.tools ] 正則表達式在線測試工具