Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:从数组创建新行_Javascript_Adobe - Fatal编程技术网

Javascript:从数组创建新行

Javascript:从数组创建新行,javascript,adobe,Javascript,Adobe,为一个可能的基本问题道歉。JS的新手,我可能在搜索中使用了错误的术语 我有这个变量 myArray = ['000001', '0000002', '0000003', '0000004'] 理想情况下,我想做的是为数组中的每个值创建一个新行,而不管存在多少值(因此1个值=1行,50个值=50行) 因此,对于以上内容,我希望得到以下结果: Row newVar 1 0000001 2 0000002 3 0000003 4 0000004 我正在

为一个可能的基本问题道歉。JS的新手,我可能在搜索中使用了错误的术语

我有这个变量

myArray = ['000001', '0000002', '0000003', '0000004']
理想情况下,我想做的是为数组中的每个值创建一个新行,而不管存在多少值(因此1个值=1行,50个值=50行)

因此,对于以上内容,我希望得到以下结果:

Row    newVar
1      0000001
2      0000002
3      0000003
4      0000004

我正在Adobe活动中构建此功能-感谢所有有用的答案

您可以使用
Array.map
进行此操作:

data=['000001','0000002','0000003','0000004'];
var rows=data.map(函数(项,索引){return[index,item];});
console.log(行);
var rowsAsObject=data.map(函数(项,行){return{row:row,项:项};});

console.log(rowsAsObject)使用Array.map并创建动态表

Javascript

var myArray = ['0000001','0000002','0000003','0000004'];

var ar = myArray.map(function(value, i){
        return '<tr><td class="row">'+i+'</td><td class="value">'+value+'</td></tr>'
})

document.getElementById('tb').innerHTML = ar.join('');
var myArray=['0000001','0000002','0000003','0000004'];
var ar=myArray.map(函数(值,i){
返回“+i+”+值+”
})
document.getElementById('tb').innerHTML=ar.join('');
HTML

<table>
  <thead>
    <th>Row</th>
    <th>Value</th>
 </thead>
 <tbody id="tb">

 </tbody>
</table>

一行
价值
一些观察结果:

  • myArray
    应该是一个数组<代码>变量myArray=[000001000000000000030000004]
  • As
    0000001
    只不过是编号1。如果需要0000001格式,请首先将其转换为字符串
  • 演示

    var myArray=[“0000001”、“0000002”、“0000003”、“0000004”];
    var table=document.getElementById(“myTable”);
    对于(var i=0;i
    表格,td{
    边框:1px纯黑;
    }
    
    一行
    纽瓦尔
    
    这将生成所需格式的输出

    myArray = ["0000001","0000002","0000003","0000004"];    
    
    logInfo("Row\tnewVar");
    for (var i = 0; i < myArray.length; i++) {
        logInfo(i+"\t"+myArray[i]);
    }
    
    myArray=[“0000001”、“0000002”、“0000003”、“0000004”];
    logInfo(“行\tnewVar”);
    对于(var i=0;i
    你确定
    myArray
    是一个数组吗?应该是myArray=[0000010000000003000004]
    0000001
    只是数字1的一个文本。您必须使用字符串,即
    ['0000001','0000002']
    等。或者,更好的是,只使用填充函数。@raina77ow是正确的<如果代码>000001
    不是字符串,它将被转换为
    1
    。此外,您还必须定义结果的格式??数组文字,对象文字?Adobe活动中固有的JavaScript有点奇怪(我似乎找不到它的确切用途)。它返回这个错误;编译脚本“WKF129/js5”第6行时出现JST-310000错误:myArray.map不是函数。@moody\u mage我不确定Adobe campaign是如何工作的。如果不尝试使用for循环,您可以使用数组映射的polyfill从这里复制它->“。正如其他地方提到的,这是用于Adobe活动的,它使用了一个奇怪的本机JS。它返回这个错误;JST-310000编译脚本“WKF129/js5”第4行时出错:左侧的赋值无效(行='var rows=data.map((项,索引)=>[index,item]);'token='=>[index,item]);'))。啊,这个JS引擎可能还不支持ES6函数文本。我将采用我的示例。它也确实不喜欢map函数。。。JST-310000编译脚本“WKF129/js5”第11行时出错:data.map不是一个函数。好的,让我们稍微后退一点:您是否有一个ECMAScript版本或一些说明在您的上下文中可用的规范?Adobe Campages native JS是一个模糊的版本。您的脚本返回此错误;JST-310000编译脚本“WKF129/js5”第22行时出错:document.getElementById不是函数。