Bir etiket öğesinin iç metnini değiştirmek için düz js kullanıyorum ve innerHTML veya nodeValue veya textContent'i hangi gerekçelerle kullanmam gerektiğinden emin değildim. Yeni bir düğüm oluşturmama veya HTML öğelerini veya herhangi bir şeyi değiştirmeme gerek yok - sadece metni değiştirin. İşte kodun bir örneği:
var myLabel = document.getElementById("#someLabel");
myLabel.innerHTML = "Some new label text!"; // this works
myLabel.firstChild.nodeValue = "Some new label text!"; // this also works.
myLabel.textContent = "Some new label text!"; // this also works.
JQuery kaynağına baktım ve nodeValue'u tam olarak bir kez kullanıyor, ancak innerHTML ve textContent'i birkaç kez kullanıyor. Sonra, firstChild.nodeValue değerinin önemli ölçüde daha hızlı olduğunu gösteren bu jsperf testini buldum. En azından onu kastettiğim bu.
FirstChild.nodeValue çok daha hızlıysa, yakalama nedir? Yaygın olarak desteklenmiyor mu? Başka bir sorun var mı?
nodeValue
html'yi de ayrıştırmıyor