【问题标题】:How to fill an array with a for loop in Javascript?如何在Javascript中用for循环填充数组?
【发布时间】:2014-07-21 19:28:56
【问题描述】:

我想创建一个 for 循环,它将根据 for 循环中设置的固定数字为 sampleItems 生成一个新元素。

var list = new WinJS.Binding.List();

var groupedItems = list.createGrouped(
  function groupKeySelector(item) { return item.group.key; },
  function groupDataSelector(item) { return item.group; }
);

generateSampleData().forEach(function (item) {
  list.push(item);
});

function generateSampleData() { 

  var sampleGroups = [
    { key: "group1", title: "Event1", backgroundImage: "/images/event1.jpg"}
  ];

  var sampleItems = [
    { group: sampleGroups[0], title: "Item Title: 1", content: "http://192.168.201.41/Stream" + [i] + ".mp4", backgroundImage: "/images/image1.jpg" }
  ];

  return sampleItems;
}

我试图在sampleItems 中放置一个 for 循环,但我不允许在其中放置循环。

【问题讨论】:

  • sampleItems 的哈希中的[i] 是什么?你认为你将在 for 循环中拥有它的价值吗? :P
  • 如果您提供了尝试放入 sampleItemsfor 循环的代码,将会很有用。
  • i 将是一个值!我只想要一个基本的 for 循环 var streams = 7 for(i=0; i<streams; i++)
  • @KathyS 作为一名优秀的学习者和贡献者,如果您发现任何有用的答案,您应该为此投票

标签: javascript arrays for-loop windows-8.1 winjs


【解决方案1】:

根据问题 cmets 的对话,这里是 js 的基本数组填充代码:

var streams = 7;
var sampleItems = [];

for(i = 0; i < streams; i++) {
   sampleItems.push({'a': 'b', 'c': 'd'})
}

{'a': 'b', 'c': 'd'} 替换为所需的键值对

【讨论】:

    【解决方案2】:

    你正在循环一个包含一个对象作为条目的数组。你可能想要做的是完全丢弃你的对象结构,只使用一个简单的数组,比如:

    var sampleItems = [ sampleGroups[0], "Item Title: 1", ..... ];

    您也可以在不使用数组的情况下使其成为实际对象,但在我看来您想使用List。如果没有List 是必要的,只需将生成的整个对象 generateSampleData 到您的对象中或将其附加到现有对象中。

    【讨论】:

      猜你喜欢
      • 2012-11-21
      • 1970-01-01
      • 2013-09-12
      • 2013-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多