在javascript中列出

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在javascript中列出相关的知识,希望对你有一定的参考价值。

如何阻止此javascript代码将最后一次迭代次数传递给删除函数?

<html>
<head>
    <meta charset="utf-8">
</head>
<body>
    <div id="lista"></div>
</body>
    <script type="application/javascript">
        var dados = ['vassoura','lixo','papel'];
        function deletar(elemento){
            console.log(elemento);
        }
        function listar(){
            var div = document.getElementById('lista');
            for(i in dados){
                campo = document.createElement("output");
                button = document.createElement("button");
                button.addEventListener("click",()=>{
                    deletar(dados[i]);
                });
                button.innerHTML="deletar";
                div.appendChild(campo);
                div.appendChild(button);
                console.log(i);
                campo.value = dados[i]+" ";
                console.log(dados[i]);
            }
        }
        listar();
    </script>

它传递的是与迭代相对应的最后一个数字,因为当我点击按钮时,迭代已经完成并完成

答案

看起来这是一个变量范围的常见错误。

最简单的方法是使用闭合或至少用for(i in dados)替换for(let i in dados)

另一答案

首先,得到爸爸的长度。并检查何时i = dados_length(最后一个元素)然后跳过您要跳过的代码。

以上是关于在javascript中列出的主要内容,如果未能解决你的问题,请参考以下文章

Javascript代码片段在drupal中不起作用

译文:18个实用的JavaScript代码片段,助你快速处理日常编程任务

几个有用的JavaScript/jQuery代码片段(转)

JavaScript 代码片段

javascript 用于在节点#nodejs #javascript内设置react app的代码片段

48个值得掌握的JavaScript代码片段(上)