1

我有以下代码,我想在其中评估连接,然后检查它是否已定义,

var image1="images/pic1.png";
var image2="images/pic2.png";
var image3="images/pic3.png";
var image4="images/pic4.png";
/*
var image5="";
var image6="";
var image7="";
var image8="";
var image9="";
var image10="";
var image11="";
var image12="";
*/

var imageLink;
var count=12;

for (i=0;i<count;i++){

    var imageLink=eval("image"+(i+1));

    if (typeof imageLink === "undefined"){
        alert("imageLink is undefined");
        imageLink="";
    }

所以最后一块是行不通的。

4

1 回答 1

0
var images = [];

images.push( 'images/pic1.png' );
images.push( 'images/pic2.png' );
images.push( 'images/pic3.png' );
images.push( 'images/pic4.png' );

var imageLink = '';

for ( i=0; i<images.length; i++ ){

    imageLink = images[ i ];

    if ( !imageLink ){
       alert( 'imageLink is undefined' );
       imageLink = '';
    }
}

按照评论中的建议,将数据放在一个数组中,然后循环遍历 for 上的每个元素,这样您的代码就会变得更简洁,并且您不必进行 eval。

于 2013-02-20T11:19:39.960 回答