如何将jQuery获取的XML子元素长度转为连续数字序列输出?
实现递增计数输出的方法
你可以通过遍历XML中的CHILDREN元素,利用遍历的索引值(从0开始)加1,来生成1到8的递增序列,具体有两种常用方式:
方式一:逐个输出递增数字
先获取所有目标元素,再用each遍历,每次输出索引+1的值:
// 获取所有CHILDREN元素 const $children = $(xml).find('PARENT').find('CHILDREN'); // 遍历输出递增计数 $children.each(function(index) { console.log(index + 1); // 依次输出1、2、3...8 });
方式二:生成空格分隔的计数字符串
如果需要输出1 2 3 4 5 6 7 8这种格式的字符串,可以用map收集所有计数,再用join拼接:
const $children = $(xml).find('PARENT').find('CHILDREN'); // 生成空格分隔的计数字符串 const countStr = $children.map(function(index) { return index + 1; }).get().join(' '); console.log(countStr); // 输出 "1 2 3 4 5 6 7 8"
原理很简单:jQuery的each和map方法的回调参数里,index是从0开始的元素下标,加1后就对应从1开始的递增序号,而元素总数是8,所以刚好生成1到8的序列。
内容的提问来源于stack exchange,提问作者nanchalantflow
相关产品推荐
相关产品推荐

