所以我试着用javascript去掉html,但是有困难,我添加到数组中的每个新对象都会改变之前添加的每个对象:
$.get("Readfrom.php", null, function(html) {
//console.log(html);
var data = html;
var uls = $("<ul>").html(data)[0].getElementsByTagName('ul');
var length = uls.length;
var elements;
var object = {
id: 'meh',
name: '',
lastN: '',
identyfier: '',
};
var arrayb = new Array();
for (var i = 2; i < length; ++i) {
elements = $("<ul>").html(data)[0].getElementsByTagName('ul')[i].getElementsByTagName('li');
var elemLength = elements.length;
object.id = elements[0].firstChild.nodeValue;
object.name = elements[1].firstChild.nodeValue;
object.lastN = elements[2].firstChild.nodeValue;
object.identyfier = elements[3].firstChild.nodeValue;
arrayb.push(object);
console.log(object);
}
console.log(arrayb);
}, "text");
这是我为对象获得的控制台输出
Object { id: "1", name: "Peter", lastN: "La'habo", identyfier: "ABsdf23" }
Object { id: "2", name: "Liam", lastN: "Peters", identyfier: "dfghfgh54" }
Object { id: "3", name: "Super", lastN: "man", identyfier: "gff$$#'\\" }
Object { id: "4", name: "Jimmy\t", lastN: "Bobb's", identyfier: "fghj234\"234df" }
Object { id: "5", name: "Richárd", lastN: "Moore", identyfier: "dfghfg" }
Object { id: "6", name: "Jack", lastN: "Hurlock", identyfier: " fffffff" }
Object { id: "7", name: "Steve", lastN: "Stanley", identyfier: "fghgggg433" }
这是数组
0: Object { id: "7", name: "Steve", lastN: "Stanley", … }
1: Object { id: "7", name: "Steve", lastN: "Stanley", … }
2: Object { id: "7", name: "Steve", lastN: "Stanley", … }
3: Object { id: "7", name: "Steve", lastN: "Stanley", … }
4: Object { id: "7", name: "Steve", lastN: "Stanley", … }
5: Object { id: "7", name: "Steve", lastN: "Stanley", … }
6: Object { id: "7", name: "Steve", lastN: "Stanley", … }
length: 7
我真的对这里发生的事情感到困惑。为什么新对象会覆盖所有已有的对象?
https://stackoverflow.com/questions/51293240
复制相似问题