null → string в setAttribute
Наткнулся сейчас
var b = document.body; b.setAttribute("x", null); alert(b.getAttribute("x").length); Ну в старых IE понятно ошибка будет, в IE9 и Chrome 14 выдает 4, в Opera 11 и Firefox 5 — 0. |
Кхм, действительно, с первого взгляда не очевидно.
var b = document.body; b.setAttribute("x", null); alert(b.getAttribute("x").constructor); |
Главное String(null) во всех браузерах одинаково работает, а в setAtrribute в одних в пустую строку преобразуется, в других — "null".
|
В таких случаях лучше использовать неявное привидение типов
var b= document.body; b.setAttribute("x", null + ""); alert( b.getAttribute("x").length ); |
Часовой пояс GMT +3, время: 14:21. |