JavaScript >> Javascript 文檔 >  >> JavaScript

如何在 JavaScript 中使用計算屬性名稱

計算屬性名稱功能是在 ECMAScript 2015(ES6) 中引入的,它允許您以 JavaScript 對象文字表示法動態計算對象屬性的名稱。

JavaScript 對像只是稱為屬性的鍵值對的集合。屬性的鍵是字符串或符號(也稱為屬性名),值可以是任何東西。

在計算屬性名稱之前,如果要創建具有動態屬性名稱的對象,則必須先創建對象,然後使用括號表示法將該屬性分配給值:

const key = 'name';
const value = 'Atta';

const user = {};
user[key] = value;

console.log(user.name); // Atta

但是,ES6 計算屬性名稱功能允許您將表達式作為屬性名稱分配給對象文字符號中的對象。無需先創建對象。

上面的代碼現在可以改寫如下:

const key = 'name';
const value = 'Atta';

const user = {
    [key]: value
};

console.log(user.name); // Atta

key 可以是任何表達式,只要它包含在括號 [] 中 :

const key = 'name';
const value = 'Atta';

const user = {
    [key + '34']: value
};

console.log(user.name34); // Atta

最後一件事,您還可以使用模板文字(字符串插值)作為計算屬性名稱的表達式:

const key = 'name';
const value = 'Atta';

const user = {
    [`${key}34`]: value
};

console.log(user.name34); // Atta

Tutorial JavaScript 教程
  1. 如何在 Docker 容器中創建節點應用程序

  2. “npm install”不適用於從 github 提取的 react 項目

  3. 介紹我的新個人網站,一個沒有框架的靜態 SPA 🚀

  4. 創建 vite vue ts 模板:設置 editorconfig

  5. 如何使用 Vue - 道具與數據

  6. 在 React 中從正文中刪除邊距

  7. React:用於訪問存儲的自定義掛鉤

  1. 如何使用 Nest JS 服務器代碼對 React 應用程序進行 dockerize...!

  2. Redux 為 React 開發者簡單明了的解釋

  3. Yelpcamp - 我的第一個全棧項目

  4. 了解react中的useEffect hook

  5. 了解原始值與非原始值

  6. 在頁面加載/路由更改時反應進度條(Next js 和 CRA)

  7. 有沒有辦法將 IFRAME 中的內容溢出到父框架上?

  1. 使用 React 和 Styled-Components 無需大驚小怪的暗模式切換! 🌞↔️🌖

  2. 性能分析您的 React 應用程序

  3. 將 Meteor 後端連接到 React Native 應用程序

  4. 如何通過 React 使用 Cypress 進行 E2E