2012-12-08 95 views
-1

我已经给了两个数组,每个数组中有几个对象。我试图做到这一点,以便在做出某个下拉选择时,它会将“航班信息”推送到“航班概要”区域,但我很难搞清楚如何做到这一点。如何操作数组中的对象?

var possibleDepartureFlights=[{year:2012,month:11,day:13,hour:17,minute:37,price:137.38} and so on]; 

var possibleReturnFlights=[{year:2012,month:11,day:18,hour:21,minute:45,price:189.46} and so on]; 

每个var在数组中有10个对象,每个对象都具有所有这些属性。

作为一个额外的问题,我已经想出了如何选择返回航班早于出发时隐藏“提交”按钮,但我无法弄清楚如何让提交按钮回来时有不同的选择!

function displayDivs() { 
var departureValue = $('#departureFlightsControl').val(); 
var returnValue = $('#returnFlightsControl').val(); 
if (departureValue != "default") { 
    $('.CumulativeSummary').addClass('totalAvailable'); 
    $('.DepartureSummary').addClass('flightChosen'); 
} 
if (returnValue != "default") { 
    $('.CumulativeSummary').addClass('totalAvailable'); 
    $('.ReturnSummary').addClass('flightChosen'); 
} 
if ($('#returnFlightsControl').val() < $('#departureFlightsControl').val()) { 
    $('.SubmitArea').hide(); 
} 

对不起,如果这个问题含糊不清!我不熟悉jQuery和JavaScript,所以我不确定自己在做什么(而且我甚至不确定Google要找到我的问题的答案)。请用小字,就好像你在和一个孩子说话一样。谢谢!

+1

'var month = possibleDepartureFlights [0] .month;'首先访问数组,然后你有对象可以访问它的属性。 – adeneo

回答

0

你的问题实在太广,反正...假设你有以下

var possibleDepartureFlights=[ 
    {year:2012,month:10,day:13,hour:10,minute:37,price:137.38}, 
    {year:2012,month:11,day:15,hour:17,minute:47,price:150.50} 
]; 

possibleDepartureFlights是两个对象的数组,数组的第一个元素是第一个对象,它的{year:2012,month:10,day:13,hour:10,minute:37,price:137.38}和它的索引是0,而possibleDepartureFlights阵列中的第二个元素是第二个对象,它的编号为{year:2012,month:11,day:15,hour:17,minute:47,price:150.50},索引是1。现在,如果你要访问数组的第一个项目的month财产,那么你可以编写

alert(possibleDepartureFlights[0].month); // this will alert 10 

对于数组中的第二项/对象的month你可以写

alert(possibleDepartureFlights[1].month); // this will alert 11 

要遍历array并打印出每个对象的每个属性,你可以试试这个

for(i=0;i<possibleDepartureFlights.length;i++) 
{ 
    console.log(possibleDepartureFlights[i].year); 
    console.log(possibleDepartureFlights[i].month); 
    console.log(possibleDepartureFlights[i].hour); 
    console.log(possibleDepartureFlights[i].minute); 
    console.log(possibleDepartureFlights[i].price); 
} 

An Example Here.

请记住,这只是一个简短的例子,关于arraysobjects的更多信息请参考JavaScript。还请记住,您可以loopfor in对象for loopthis one也可能有帮助。

+0

谢谢!这真的很有帮助。很抱歉,我的问题太广泛了,我很难理解数组/对象以及它们如何与代码的其余部分进行交互,所以这很有帮助。 – user1888527