使用循环来定义变量值JS

时间:2013-12-05 07:50:32

标签: javascript jquery html arrays list

我正在使用javascript和JQuery。

让我们假设有一个数组,ListArray,里面有一堆句子。简单。

我能以某种方式这样做吗?

var List = for (var i = 0; i < 10; i++) {
    //loop through an array here to generate the contents
}

我需要生成许多列表组,并在每个列表组中生成一个列表,列表的内容存储在一个数组中。

那么如何从数组中生成此列表并将其存储在该变量中?

变量应具有

的结果
var List = "<p>Some content from an array</p><p>Some content from an array</p><p>Some content from an array</p>";

要清楚,我在询问在JS中的变量中放置一个for循环是否有效。

3 个答案:

答案 0 :(得分:1)

只需添加循环内的变量:

var list = '';

for (var i = 0; i < 10; i++) {
   list += '<p>' + generateContentForGroup(i) + '</p>';
}

其中generateContentForGroup会以某种方式获取第i个数组并从中生成您想要的内容。


  

我在询问在JS中的变量中放置一个for循环是否有效。

不,不是。这将导致语法错误。在赋值的变量声明的右侧只能是表达式

var variable_name = expression;

for循环是语句,因此不能用于代替表达式。

答案 1 :(得分:1)

如何使用jQuery.map

var arr = [
             "Some content from an array",
             "More content from an array",
             "Even more content from an array"
          ];
var str = $.map(arr,function(e){ return "<p>" + e + "</p>"}).join('');
//output: <p>Some content from an array</p><p>More content from an array</p><p>Even more content from an array</p>

实例:http://jsfiddle.net/s874S/

答案 2 :(得分:0)

尝试:

ary = ["some text1","some text2","some text3"];
var list = "";
var len = ary.lengthl
for (var i = 0; i < len; i++) {
    list += "<p>"+ary[i]+"</p>";
}