gpt4 book ai didi

javascript - 对元素集合使用 splice

转载 作者:行者123 更新时间:2023-12-03 10:34:58 34 4
gpt4 key购买 nike

我运行它是为了获取 HTML 表单控制元素的集合

var elem = document.getElementById('display').elements;

我可以运行它来获取一组元素:

var elemgroup = Array.prototype.slice.call(elem,0, 3);

我正在尝试找出一种运行 splice 函数的方法,该函数将删除并返回元素。据我所知 splice 仅适用于数组。有没有办法在类似数组的对象上运行拼接?

最佳答案

正如 phari 所指出的,该集合是只读的。如果您想要一种方法来从任何类似数组的对象中省略特定范围的项目(类似于 splice() ,但不修改原始集合),您可以执行以下操作。

一般来说,最好使用创建新的、转换后的数组的操作,而不是修改现有的数组。恕我直言,你不应该过多地使用 splice()

function omit(items, start, count) {
return Array.prototype.filter.call(items, function(e, i) {
return i < start || i >= start + count;
});
}

var els = document.getElementsByTagName('div');

snippet.log(els.length); // 7

var els2 = omit(els, 1, 3);

snippet.log(els2.length); // 4
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>

<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>

关于javascript - 对元素集合使用 splice,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29038981/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com