簡體   English   中英

Javascript將不同的功能合二為一

[英]Javascript combining different functions into one

假設我有一堆函數,比如

 _computeValue(value1, value2) { //return some stuff } _computeIcon(value1, value3) { //return some stuff } _computeStyle(value2, value5, value1) { //return some stuff }

我想要的是將所有這些功能組合成一個這樣的單一功能:

 _compute(key, parameters){ if(key === 'style') { //return style function } if(key === 'Icon') { //return Icon function } ..... }

考慮到我傳遞了不同的值並需要在正確的地方使用它,最好的方法是什么。

從第二個代碼塊的外觀來看, switch語句可能是一個很好的解決方案。 例子:

_compute(key, parameters) {

  switch(key) {
    case 'style':
      // style code
      break;

    case 'icon':
      // icon code
      break;

    ...

    default: // optional
      // none of the above
      break;
}

將函數添加到對象,然后使用鍵調用它們:

 const _compute = { style: function fn(...params) { return `style: ${params}`; }, icon: function (...params) { return `icon ${params}`; } }; console.log(_compute.style(1)); console.log(_compute.icon(1,2,3));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM