Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t在Javascript中复制不同数组中的按钮数组_Javascript_Arrays - Fatal编程技术网

Can';t在Javascript中复制不同数组中的按钮数组

Can';t在Javascript中复制不同数组中的按钮数组,javascript,arrays,Javascript,Arrays,我不明白为什么它不存储上一个数组的副本 代码 console.log(按钮); var copybtns=[]; for(设i=0;icopybtns.push(数据)) //记录阵列数据 console.log(copybtns) 0 1. 2. 3. 4trycopybtns.按下(按钮[i])-如果不起作用,请添加HTML以进行调试。请注意,这不会复制实际按钮。如果您想实际复制它们,请使用。为什么不简单地constcopybtns=Array.from(按钮)?copybtns[i]=按钮

我不明白为什么它不存储上一个数组的副本

代码

console.log(按钮);
var copybtns=[];
for(设i=0;i
我把它放在控制台里

我单调的html代码

<body>
    <div class="container">
        <form action="">
            <select name="changecolor" id="background" onchange="changeToRed(this)">
                <option value="Random">Random</option>
                <option value="Red"">Red</option>
                <option value="Blue">Blue</option>
                <option value="Black">Black</option>
                <option value="Reset">Reset</option>
            </select>
        </form>
        <button>0</button>
        <button class="btn btn-primary">1 </button>
        <button class="btn btn-danger">2</button>
        <button class="btn btn-dark">3</button>
        <button class="btn btn-warning">4</button>
    </div>
</body>

随机的

您只需使用
forEach
函数,使用
querySelectorAll
方法将按钮存储在空数组中
copybtns

小提琴演示:

//获取所有按钮
let buttons=document.queryselectoral('button'))
//原始按钮
控制台日志(按钮)
//贮藏
var copybtns=[];
//弗雷奇
按钮.forEach((数据)=>copybtns.push(数据))
//记录阵列数据
console.log(copybtns)
0
1.
2.
3.

4
try
copybtns.按下(按钮[i])-如果不起作用,请添加HTML以进行调试。请注意,这不会复制实际按钮。如果您想实际复制它们,请使用。为什么不简单地
constcopybtns=Array.from(按钮)
copybtns[i]=按钮[i]也会修复它。@Justin您仍然有问题吗?但这是我得到的结果
NodeList[]长度:0\uuuuu proto\uuuuu:NodeList main.js:14[]长度:0
@Justin它应该可以正常工作。就像我上面的回答一样。我不确定这是什么结果?@Justin我看到了你上面关于预期结果的图片。所以你想要这样。我已经编辑了我的答案。上面答案中的My
console.log(copybtns)
正显示您在问题图片中想要的结果。另外,js fiddle演示在控制台中显示的结果与您希望的结果相同。好的,我将创建一个新项目,然后重试。非常感谢您的帮助]
<body>
    <div class="container">
        <form action="">
            <select name="changecolor" id="background" onchange="changeToRed(this)">
                <option value="Random">Random</option>
                <option value="Red"">Red</option>
                <option value="Blue">Blue</option>
                <option value="Black">Black</option>
                <option value="Reset">Reset</option>
            </select>
        </form>
        <button>0</button>
        <button class="btn btn-primary">1 </button>
        <button class="btn btn-danger">2</button>
        <button class="btn btn-dark">3</button>
        <button class="btn btn-warning">4</button>
    </div>
</body>