2012-02-08 34 views
1

我有一個ImageUrl和ThumbUrl的對象數組。如果ThumbUrl爲空,我希望它用ImageUrl替換。我有這個,但它不工作:推入陣時如果null使用陣列中的另一個圖像

$.each(results.Photos, function(i, pic){ 

    pic.ImageThumbUrl == null ? pic.ImageUrl;  

topicsPhoto.push({ 
     picUrl: pic.ImageUrl, 
     picThumb: pic.ImageThumbUrl, 
     picDescription: pic.Description 
    }); 

}); 
+0

會發生什麼?你有什麼樣的錯誤? – 2012-02-08 19:35:15

回答

5
pic.ImageThumbUrl = pic.ImageThumbUrl || pic.ImageUrl;  

或者只是:

topicsPhoto.push({ 
     picUrl: pic.ImageUrl, 
     picThumb: pic.ImageThumbUrl || pic.ImageUrl, 
     picDescription: pic.Description 
    }); 
1
pic.ImageThumbUrl = (pic.ImageThumbUrl == null) ? pic.ImageUrl : pic.ImageThumbUrl; 
2
var photos = [ 
    { ImageUrl: "imageurl1.png", ImageThumbUrl: "thumburl1.png" }, 
    { ImageUrl: "imageurl2.png", ImageThumbUrl: "" }, 
    { ImageUrl: "imageurl3.png", ImageThumbUrl: null }, 
    { ImageUrl: "imageurl4.png" } 
]; 

$.each(photos, function(i, photo) { 
    photo.ImageThumbUrl = photo.ImageThumbUrl || photo.ImageUrl; 
}); 

$.each(photos, function(i, photo) { 
    $("#out").append("<br/>imageurl = " + photo.ImageUrl + ", imagethumburl = " + photo.ImageThumbUrl); 
}); 

呈現...

imageurl = imageurl1.png, imagethumburl = thumburl1.png 
imageurl = imageurl2.png, imagethumburl = imageurl2.png 
imageurl = imageurl3.png, imagethumburl = imageurl3.png 
imageurl = imageurl4.png, imagethumburl = imageurl4.png 

您可以在這裏看到它的動作:http://jsbin.com/ekemey/edit#javascript,html,live