簡體   English   中英

如何在javascript中將值/參數傳遞給map函數

[英]How to pass value/argument to the map function in javascript

我想知道如何使用 javascript 在 map 函數中傳遞變量

var obj = ["Singapore", "Malaysia"]
var pr = ["SG", "MY"] // need to pass value to map function
render(){
 obj.map((val, pr)=>{
  return html`
        <p id="pr">val</p>
}

正如jonrsharpe已經在評論中指出的那樣:您傳遞給map函數的函數的第二個參數是您在其map使用 map 的對象的索引 您可以閱讀文檔中的參數。

所以一個解決方案是使用這個索引來訪問另一個數組的值,如下所示:

var obj = ["Singapore", "Malaysia"]
var pr = ["SG", "MY"] // need to pass value to map function
render(){
 obj.map((val, index) => {
  abbr = pr[index];

  // abbr will get the values "SG", "MY" whatsoever
}

您只需要注意您的 obj 和 pr 數組具有相同的大小並正確排序。

正如其他人所提到的, map的第二個參數是當前迭代元素的index ,看起來您在示例中不需要它。 但是,您可能會發現有用的是將名稱/代碼放入同一個對象中,然后map ping map到這些對象的數組上。 這樣相關的信息就會保持在一起。

var arr = [{ name: 'Singapore', code: 'SG' }, { name: 'Malaysia', code: 'MY' }];

class App extends React.Component {
  render() {
    return arr.map(({ name, code }) => {
      return html`<p id="${code}">${name}</p>`;
    });
  }
}

代碼沙盒示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM