JavaScript,在变量中为循环存储

JavaScript,在变量中为循环存储,javascript,jquery,Javascript,Jquery,我遇到了这个愚蠢的问题,因为jquery和javascript不是很好的语言。正如你在这里看到的: let blokla = '<select>' + test = function (info) { for (i = 0; i < info.length; i++) { '<option>' + info[i].title + '</option>'

我遇到了这个愚蠢的问题,因为jquery和javascript不是很好的语言。正如你在这里看到的:

        let blokla = '<select>' + 
        test = function (info) { 
            for (i = 0; i < info.length; i++) { 
                '<option>' + info[i].title + '</option>' 
            } 
        } + '</select>';
让blokla=''+
测试=功能(信息){
对于(i=0;i
我试图使用for循环将and存储在变量和中间变量中。我正在使用此变量,以便在单击它时可以使用按钮进行替换


我尝试用替换第一行中的+,但没有成功。

在ES6中,我建议您了解字符串插值和Array.reduce

const title=[
“欧比”,
"万",,
“克诺比”,
];
常量mySelect=`
${title.reduce((tmp,x)=>`${tmp}${x}`,'')
`;

console.log(mySelect)您以错误的方式处理问题。您可以使用
map()
在所有
info
元素上循环,并由此生成
元素,而不是试图定义在字符串中循环的函数

var options = info.map(item => `<option>${item.title}</option>`);
let blokla = `<select>${options.join('')}</select>`;
var options=info.map(item=>`${item.title}`);
让blokla=`${options.join('')}`;
var数据=['1','2','3','4'];
var html=“”+生成选项(数据)+“/”;
函数生成选项(数据)
{
var returnHtml=“”;
对于(var i=0;i您可以使用

函数选择选项(){
var blokla='';
对于(i=0;i
不生成HTML-它通常速度较慢,更容易出错,更难维护。以编程方式生成DOM元素:

const info=[
{标题:“一”},
{标题:“两个”},
{标题:“三”},
{标题:“四”},
]
让blokla=document.createElement('select');
信息
.map(item=>item.title)//获取标题
.map(title=>{//为每个
让option=document.createElement('option');
option.textContent=标题;
返回选项;
})
.forEach(option=>blokla.appendChild(option));//添加到选择
//只是为了显示这个元素会有什么HTML
console.log(blokla.outerHTML);
//附加元素

document.body.appendChild(blokla)因为jquery和javascript不是很好的语言
,我想不出有多少种语言可以让你在字符串中定义函数,更不用说没有目的的函数了。我认为javascript在很多方面都是非常好的语言。我同意jquery不是一种很好的语言。它是一个很好的library.@PriyankMotivaras我同意。然而,出于这个原因称某些东西“不太好”是难以置信的错误,没有必要使用
test=function(info)
。只需在开始和结束标签之间循环运行
选择
标签。我想你会发现,这里的人总是会给出有用的信息,通常在发帖后几分钟内回复。而且,你不需要试图让你的帖子更有趣。你所需要做的就是清楚地解释问题、你尝试过什么以及你是什么寻找。请阅读。请阅读@ScottMarcus好的,我读过了,但我认为我的排序答案会有所帮助。如果你读过,你会知道你的答案没有提供任何上下文。像这样的只写代码的答案不会让OP知道他们的代码出了什么问题,或者你的代码是如何解决问题的。没有解释,任何人将如何学习和解决问题了解您提供的内容吗?请记住,堆栈溢出不仅仅是为了回答OP的问题,它是为将来可能遇到相同或类似问题的其他人提供的知识库。@ScottMarcus您是对的,我将分享我的答案,并提供更多解释☺️
function selectOption(){
  var blokla = '<select>';
  for (i = 0; i < info.length; i++) { 
    blokla += '<option>' + info[i].title + '</option>' 
  } 
  blokla += "</select>";

  return blokla;
}

console.log(selectOption())