[英]Redundant code for objects name-values in JavaScript
我定義了一個js 對象,其名稱-值對是具有或多或少相同函數定義的函數表達式。 對象的鍵名與從外部導入的模塊的功能相匹配。
const myModule = require('some_module'); //some module imported from outside
const myObj = {};
myObj.abc = (param1, param2, param3) => {
myModule.abc(param1, param2, param3);
// some algorithm (say algo)
}
myObj.xyz= (param1, param2, param3) => {
myModule.xyz(param1, param2, param3);
// same algorithm (algo)
}
myObj.pqr= (param1, param2, param3) => {
myModule.pqr(param1, param2, param3);
// same algorithm (algo)
}
//All the three names (abc, xyz, pqr) have nearly same function definitions.
我的問題是; 有沒有更好的方法來減少代碼行數,因為代碼似乎是多余的?
我會遍歷一組方法名稱來定義函數:
const methods = ['abc', 'xyz', 'pqr'];
for (const key of methods) {
myObj[key] = (param1, param2, param3) => {
myModule[key](param1, param2, param3);
// some algorithm (say algo)
};
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.