搜尋

首頁  >  問答  >  主體

在Map中修改物件的單一屬性

<p>假設我有一個映射資料型別。 </p> <pre class="brush:php;toolbar:false;">testMap: Map<string, any></pre> <p>字串值是我的鍵,而任何值都是該映射中的物件。 <br /><br />該物件可能如下所示:</p><p><br /></p> <pre class="brush:php;toolbar:false;">{ name: 'testName', age: 20}</pre> <p>假設使用者透過下拉式選單選擇了一個帶有鍵的元素。 <br /><br />我現在如何透過這個鍵將物件的名稱改為對應的鍵? <br /><br />我已經使用forEach循環遍歷了映射,並嘗試使用Map.get()和Map.set()更改屬性。不幸的是,這並沒有起作用。 </p><p><br /></p>
P粉884667022P粉884667022521 天前513

全部回覆(1)我來回復

  • P粉301523298

    P粉3015232982023-08-04 09:03:48

    這樣的嗎

    // Assuming you have the testMap already defined
    // testMap: Map<string, any>
    
    // Step 1: Get the selected key from the dropdown (replace 'selectedKey' with the actual selected key)
    const selectedKey = 'someKey';
    
    // Step 2: Retrieve the corresponding object from the map
    const selectedObject = testMap.get(selectedKey);
    
    // Step 3: Update the "name" property of the object
    if (selectedObject) {
      selectedObject.name = selectedKey;
    } else {
      // Handle the case when the selected key is not found in the map
      console.error('Selected key not found in the map!');
    }
    
    // Step 4: Set the updated object back into the map using the same key
    testMap.set(selectedKey, selectedObject);
    
    // Now, the "name" property of the selected object in the map should be updated to the selected key.
    
    

    回覆
    0
  • 取消回覆