簡體   English   中英

如何生成單詞數等於#的單詞數組(例如value_1、value_2、...、value_#)?

[英]How to generate an array of words (e.g. value_1, value_2,..., value_#) where the number of words is equal to #?

我有一個變量(例如):

var numINeed = 4

我需要像這樣動態創建一個數組:

var arrayINeed = ["value_1","value_2","value_3","value_4"]

其中最后一項的格式使得 value_# 中的 # 等於 var numINeed,這意味着 arrayINeed 的長度 = var numINeed 的長度

到目前為止嘗試過:

我嘗試使用 for 循環創建數組(順便說一下,我正在使用 Vue JS)

      data: () => ({
          arrayINeed: [],
          variableA: []
      }),

      for (var i = 0; i<this.numINeed; ++i) {
        this.variableA = "value_" + i;
        this.arrayINeed.push(this.variableA);
      }

我相信這可能寫錯了。 我怎樣才能讓它按預期工作?

使用 ES6:

 let arrayINeed = Array.from(Array(4), (_,x) => "value_" + (x+1)); console.log(arrayINeed);

我剛剛編輯了你的代碼。 變量 i 從零開始,所以我給它加了一個。

 var numINeed = 4; arrayINeed = []; for (var i = 0; i<numINeed; ++i) { let variableA = "value_" + (i+1); arrayINeed.push(variableA); } console.log(arrayINeed);

一個簡短的代碼可能是這樣的:

 var numINeed = 4; var newArray = Array(numINeed).fill('').map((v, i) => `value_${i+1}`); console.log(newArray);

使用while循環生成數組

 var numINeed = 4; var arrayINeed = []; var i = 1; while (i < numINeed + 1) { arrayINeed.push("value_" + i); i++; } console.log(arrayINeed);

暫無
暫無

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

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