Ковыряю плагин select2 наткнулся там на такую функцию?
c.prototype.option=function(b){
var c=document.createElement("li");
c.className="select2-results__option";
var d={role:"treeitem","aria-selected":"false"};
b.disabled&&
(delete d["aria-selected"],d["aria-disabled"]="true"),null==b.id&&
delete d["aria-selected"],null!=b._resultId&&
(c.id=b._resultId),b.title&&
(c.title=b.title),b.children&&
(d.role="group",d["aria-label"]=b.text,delete d["aria-selected"]);
for(var e in d){
var f=d[e];
c.setAttribute(e,f)
}
if(b.children){
var g=a(c),h=document.createElement("strong");
h.className="select2-results__group";
a(h);
this.template(b,h);
for(var i=[],j=0;j<b.children.length;j++){
var k=b.children[j],l=this.option(k);
i.push(l)
}
var m=a("<ul></ul>",{"class":"select2-results__options select2-results__options--nested"});
m.append(i),g.append(h),g.append(m)
}
else
this.template(b,c);
return a.data(c,"data",b),c
интересует что делает конструкция:
b.disabled&&
(delete d["aria-selected"],d["aria-disabled"]="true"),null==b.id&&
delete d["aria-selected"],null!=b._resultId&&
(c.id=b._resultId),b.title&&
(c.title=b.title),b.children&&
(d.role="group",d["aria-label"]=b.text,delete d["aria-selected"]);
выполнит все присвоения и удаления если элементы этой конструкции верны?