【问题标题】:Using a loop to define variable value JS使用循环定义变量值JS
【发布时间】:2013-12-05 07:50:32
【问题描述】:

我正在使用 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 循环是否有效。

【问题讨论】:

    标签: javascript jquery html arrays list


    【解决方案1】:

    只需添加到循环内的变量:

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

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


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

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

    var variable_name = expression;
    

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

    【讨论】:

    • 谢谢 :) 这样更好
    【解决方案2】:

    用一点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/

    【讨论】:

      【解决方案3】:

      试试:

      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>";
      }
      

      【讨论】:

        猜你喜欢
        • 2022-01-12
        • 1970-01-01
        • 2021-12-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-20
        • 1970-01-01
        相关资源
        最近更新 更多