2017-08-06 14 views
-1

私はjsで多くの練習をしていませんが、私は自分のプロジェクトでそれを使用する必要があります。私はどんな助けにも感謝します。javascriptオブジェクトの値にアクセスする

添付した画像のようにChromeコンソールに表示されているオブジェクトの値にアクセスする必要があります。値と距離を読みたい。私が単純な配列distanceDuration [index]としてアクセスしようとすると、私は 'undefined'という結果を得ます。これらの値にどのようにアクセスできますか?

enter image description here

function getDistance(origin, destination) { 
var distanceDuration = []; 
.. 
distanceDuration[0] = results[j].distance.text; 
distanceDuration[1] = results[j].duration.text; 

return distanceDuration; 
} 

var addressElement = document.getElementById('address-autocomplete'); 


addressElement.addEventListener('change', function() { 
    var origin = 'Kraków, Poland'; 
    var destination = addressElement.value; 



    var distanceDuration = getDistance(origin, destination); 
    console.log('distanceDuration: ', typeof distanceDuration); // -> object 
    console.log('distanceDuration: ', distanceDuration); 
    //console.log('distanceDuration: ', distanceDuration[0]); // -> undefined 
    .. 

}, false); 
+2

正確なコードを記入してください。 'index'値はわかりません。 –

+0

distanceにはdistanceDuration [0]を、durationにはdistanceDuration [1]を使用します。 –

+0

それから私は定義されていません – Michal

答えて

0

私は正確にあなたの問題を理解していません。レギュラーを使用して、しかし

var distanceDuration = ['273 km', '2 hours 55 mins']; 
var [distance, duration] = distanceDuration; 

:非構造を使用

var distanceDuration = ['273 km', '2 hours 55 mins']; 
var distance = distanceDuration[0]; 
var duration = distanceDuration[1]; 

:第二にアクセスするための配列の最初の要素(距離)にアクセスするためのインデックス0、及び1(持続時間)を使用し配列の代わりにオブジェクトを使用する方がよいでしょう:

var distanceDuration = { distance: '273 km', duration: '2 hours 55 mins']; 
var distance = distanceDuration.distance; 
// using destructuring: 
var {duration} = distanceDuration; 
関連する問題