繁体   English   中英

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

[英]Array push action, can i improve the code

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

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

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

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 );

没关系。 但如果你必须:

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

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

例如,所以:

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM