如何从Cheerio对象中删除属性?

时间:2015-12-08 13:34:46

标签: node.js cheerio

我需要首先使用Cheerio获取所有元素。所以我选择all然后尝试先删除但是当我尝试循环元素后,我得到错误,第一个元素未定义...

var categories = $('.subtitle1');

console.log(categories.length);

delete categories[0];
delete categories['0'];

console.log(categories.length);

categories.each(function(i, element) {
    console.log(element.children);
});

结果:

15
15

TypeError: Cannot read property 'children' of undefined....

如果我发表评论delete...,除了我有第一个元素外,一切正常。

1 个答案:

答案 0 :(得分:3)

也许这可以解决您的问题:

var $element = $(<htmlElement>);

$element = $element.slice(1); // Return all except first.
// $element = $element.slice(1, $element.length);

文档:https://github.com/cheeriojs/cheerio#slice-start-end-

所以在你的情况下,这应该是有效的:

var categories = $('.subtitle1').slice(1);
categories.each(function(i, element) {
    console.log(element.children);
});