获取一个无序列表
var ul = document.getElementById('source');
var li = ul.getElementsByTagName('li');
function getData() {
var str;
var data=[];
var i = 0;
while(li[i]!=undefined) {
str = li[i].innerText;
data.push(str);
i++;
}
for(var j = 0; j < data.length; j++) {
data[j] = data[j].split(":");
}
return data;
}
获取无序列表的主要思路是,先获取到ul下的所有li标签,使用innerText得到li里面的内容。再用data.push将所有li标签的内容全部添加到数组内。
按照有序的方式排列
data的数组是长这个样子的:
data = [
["北京", 90],
["北京", 90]
……
]
所以排序可以使用数组的sort方法,通过compare函数比较每个数组元素内的第二个元素来进行排序。
function sortAqiData(data) {
function compare(value1, value2) {
if (value1[1]>value2[1]) {
return -1;
} else {
return 1;
}
}
data.sort(compare);
return data;
}
显示一个有序的列表
这个直接为每个数组元素添加标签,并用ul.innerHTML串起来就好了~