iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
1
自我挑戰組

JavaScript技術手冊閱讀筆記系列 第 14

第14天:函式的運用,自己寫filter()

在JavaScript中,每一個函式都式物件,都是Function的實例。所以我們可以宣告一個變數指向為函式物件。

function max(n1,n2){
  return n1>n2?n1:n2;
}
let m = max;

https://ithelp.ithome.com.tw/upload/images/20200929/201204208pMye1j43G.png

自己寫filter()函式

如果有個字串陣列,想要過濾出陣列中字串長度大於6的元素,可以如下撰寫函式。

function filter(arr){
  let ans = [];
	for(let item of arr){
    if(item.length>6)
			ans.push(item);
  }
	return ans;
}

以上程式中的查詢條件寫死為ltem.length>6
那我們可以把這個判斷式包成一個獨立的函式,當成變數傳進函式裡面當成判斷式

function isTrue(value){
    return value.length>6;
}

function filter(arr,boolFunction){
  let ans = [];
	for(let item of arr){
    if(boolFunction(item))
			ans.push(item);
  }
	return ans;
}
filter(arr,isTrue);

https://ithelp.ithome.com.tw/upload/images/20200929/20120420cD61JId3Qa.png


上一篇
第13天:捷徑運算、函式的預設參數、選項物件與不定長度引數
下一篇
第15天:陣列內建filter()、map()、sort()方法
系列文
JavaScript技術手冊閱讀筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言