亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

需要建議 - 使用 javascript 動態設置參數/屬性

需要建議 - 使用 javascript 動態設置參數/屬性

莫回無 2022-11-03 10:02:18
有沒有辦法在javascript中為函數動態設置參數或屬性?一些例子:const funcOne = (param1, param2) => console.param1(param2);funcOne(log, `hello there`);顯然上面的行不通,舉個例子,下同:const mongoFunc = param, filter => Collection.param(filter, (err, foundArticle) => {// code block});這將起作用:const funcOne = (param1, param2) => console.log(param1, param2);funcOne(`hello`, `there`);所以我想知道是否有一種動態方式來設置console.log 中的日志,就像mongo 動態設置Collection.find 或collection.findOneAndUpdate 一樣。先感謝您。
查看完整描述

2 回答

?
慕尼黑的夜晚無繁華

TA貢獻1864條經驗 獲得超6個贊

是的,你絕對可以做到。首先,在一個對象中,您可以使用[]如下方式訪問/創建一個動態鍵:


object[dynamicKey] = 'someVal';

其中 dynamicKey 字符串是您要在對象中訪問的鍵。例子


const sampleObject = {

   name: 'stack',

   flow: true,

};


const setDynamicKey = (o, k, v) => (o[k] = v);


setDynamicKey(sampleObject, 'hello', 'world!');

console.log(sampleObject); // { name: 'stack', flow: true, hello: 'world!' }

現在對于您的情況,您可以執行以下操作


const funcOne = (param1, param2) => console[param1](param2);


funcOne('log', 'hello there');


查看完整回答
反對 回復 2022-11-03
?
森欄

TA貢獻1810條經驗 獲得超5個贊

您首先必須將log 作為字符串傳遞,否則它將引發錯誤,指出 log 未定義。

你可以試試這個:

const funcOne = (param1, param2) => console[param1](param2);
funcOne('log', `hello there`);

如果要在 javascript 中動態訪問對象的屬性,則必須使用方括號表示法。

希望這可以幫助!


查看完整回答
反對 回復 2022-11-03
  • 2 回答
  • 0 關注
  • 147 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號