最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

第十七堂 – Sort Without Articles

XAMPP下载 admin 590浏览 0评论

今天的實作相當簡單,就是對內容為字串的Array做字頭排序,但要忽略article(英文小教室:這邊的article不是文章,而是「冠詞」,像是the、a、an等)。範例如下:

QQ截图20181105163353

 邏輯流程
將Array中的字串的特定冠詞刪除
對Array做排序
放進HTML列表
課程重點
刪除特定冠詞:練習中是利用前面課程提過的regular exression來在字串中找出特定的pattern,這邊我們要找的就是the、a、an。

function strip(bandName) {
return bandName.replace(/^(a |the |an )/i, ”).trim();
}
這裡的/^(a |the |an )/i是找出位在開頭的a或the或an,而為了不影響字串本身就含有這些特定字母,像是Array中的”Anywhere But Here”是An開頭但他不是冠詞,所以在regular exression中我們尋找的冠詞後面其實是要空格,來找出真的冠詞。那最後的i是代表不分大小寫,不論是The、the、A、a…都會被找出來。

那刪除的部分我們是用replace(),將上面找到的冠詞用空字串來取代,達到刪除的效果。

sort():本實作的重點,是Array的函式,可用來做字母的排序或數字大小排序,前面課堂也有用過,範例如下

bands.sort((a, b) => strip(a) > strip(b) ? 1 : -1);
這邊老師也是用前面課程常用的三元運算子,也就是?和:來做if else的判斷。如果刪除冠詞後的字串大於刪除冠詞後的下一個字串,就回傳1,否則回傳-1。

转载请注明:XAMPP中文组官网 » 第十七堂 – Sort Without Articles

您必须 登录 才能发表评论!