数组推送动作,我可以改进代码

时间:2013-06-06 13:55:37

标签: javascript

我正在使用数组推送功能将元素添加到数组

var Oben = document.getElementById("Oben")
var Unten = document.getElementById("Unten")
if( Oben ) {
    objekte.push( Oben );
}
if( Unten ) {
    objekte.push( Unten );
}

我可以改进这种编码风格吗?

4 个答案:

答案 0 :(得分:2)

var Oben = document.getElementById("Oben");
var Unten = document.getElementById("Unten");

!Oben ||  objekte.push( Oben );
!Unten ||  objekte.push( Unten );

var Oben = document.getElementById("Oben");
var Unten = document.getElementById("Unten");

Oben &&  objekte.push( Oben );
Unten &&  objekte.push( Unten );

答案 1 :(得分:2)

没关系。但如果你必须:

function pushIfFound(list, id){
    var node = document.getElementById(id);
    if (node){
       list.push(node);
    }
}

pushIfFound(objekte, 'Oben');
pushIfFound(objekte, 'Unten');

答案 2 :(得分:0)

例如,所以:

var Oben = document.getElementById("Oben"),
    Unten = document.getElementById("Unten");

答案 3 :(得分:0)

我可能不会在现实生活中这样做,因为对于其他人而言,维持这一点并不是最直观的,而是在一行中进行比较:

var Oben = document.getElementById("Oben");
var Unten = document.getElementById("Unten");
objekte.push(Oben?Oben:Unten?Unten);