溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

JavaScript處理變量命名的參數(shù)對象是什么

發(fā)布時間:2022-06-02 13:46:19 來源:億速云 閱讀:128 作者:iii 欄目:開發(fā)技術(shù)

本文小編為大家詳細介紹“JavaScript處理變量命名的參數(shù)對象是什么”,內(nèi)容詳細,步驟清晰,細節(jié)處理妥當(dāng),希望這篇“JavaScript處理變量命名的參數(shù)對象是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。

問題描述:在開發(fā)過程中,遇到一個給對象賦值的問題,參數(shù)是通過循環(huán)變量的方式進行處理。

js 重要函數(shù) window,eval

  • 1、window 定義全局變量。

  • 2、eval() 函數(shù)計算 JavaScript 字符串,并把它作為腳本代碼來執(zhí)行。

如果參數(shù)是一個表達式,eval() 函數(shù)將執(zhí)行表達式。如果參數(shù)是Javascript語句,eval()將執(zhí)行 Javascript 語句。

另外,window使用注意點如下圖:

JavaScript處理變量命名的參數(shù)對象是什么

事例:

// 用數(shù)組中的變量定義參數(shù)
let need_arr = ['a1','b1','c1','d2','e2'];
for (let i = 0; i < need_arr.length-1; i++) {
  let need_name = need_arr[i];  //生成函數(shù)名
  window[need_name] = '賦值參數(shù),也可以是對象'+i;
  // 也可以寫成 window.need_name = '賦值參數(shù),也可以是對象'+i;
}
console.log(a1);
console.log(b1);
console.log(c1);
console.log(d2);
console.log(e2);

打印結(jié)果:

賦值參數(shù),也可以是對象0
賦值參數(shù),也可以是對象1
賦值參數(shù),也可以是對象2
賦值參數(shù),也可以是對象3
賦值參數(shù),也可以是對象4

JavaScript處理變量命名的參數(shù)對象是什么

說明:上面實現(xiàn)的效果是,以 need_arr 數(shù)組里的值作為變量,并給變量賦值。

如果 賦值是對象的話,需要取對象里的元素(使用函數(shù))。 接著使用上面定義的數(shù)組,事例如下:

let need_arr = ['a1','b1','c1','d2','e2'];
for (let i = 0; i < need_arr.length-1; i++) {
  let need_name = need_arr[i];  //生成函數(shù)名
  window[need_name] = '賦值參數(shù),也可以是對象'+i;
}
const have_arr=[]; 

for (let i = 0; i < need_arr.length-1; i++) {
  let have_name = need_arr[i];   //生成函數(shù)名
  let need_obj = eval("("+have_name+")")
  have_arr[need_arr[i]] = need_obj; // 如果是對象科室使用其函數(shù)
}
console.log(have_arr)

打印結(jié)果:

JavaScript處理變量命名的參數(shù)對象是什么

說明:上面是把need_arr里的值作為變量并賦值,然后,再把生成的變量(如a1)的值(可以是字符串,也可以是對象。如 "賦值參數(shù),也可以是對象0")作為值賦值給對應(yīng)的變量(如a1);

如果把上面代碼中的 have_arr[need_arr[i]] = need_obj; // 如果是對象科室使用其函數(shù) 這一行改為have_arr[need_arr[i]] = need_obj.length; // 如果是對象科室使用其函數(shù),可以根據(jù)下面的結(jié)果,對比一下:

JavaScript處理變量命名的參數(shù)對象是什么

讀到這里,這篇“JavaScript處理變量命名的參數(shù)對象是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI