[英]Can I pass an object into a function that takes its fields as parameters?
我有一個 function 看起來有點類似於以下內容:
foobar: function(arg1, arg2, arg3, ... argN) {
// execute function
// return result
}
實際上,這個 function 需要很多arguments。 我不允許更改此 function 的內容或其構建方式。
我還有一個 object:
inputObj: {
arg1: val1,
arg2: val2,
// ...
argN: valN
}
其中此 object 的字段與 function foobar 的參數完全匹配 - 換句話說,字段拼寫相同,它們以相同的順序添加到 object 等。
Javascript 是否具有內置的 function 以將inputObj傳遞到 function foobar ? 或者,Javascript 是否有一種優雅的方式讓我將inputObj object 拆分為其內容,以便根據它們的鍵將值傳遞到 function 中?
例如,一種可能的解決方案可能是:
const arg1 = inputObj['arg1'];
const arg2 = inputObj['arg2'];
// ...
const argN = inputObj['argN'];
foobar(arg1, arg2, ..., argN);
但我正在尋找一種方法來避免寫出整個代碼塊以使其更易於閱讀。
提前致謝!!
您可以使用解構。
const {arg1, arg2, ..., argN} = inputObj;
foobar(arg1, arg2, ..., argN);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.