Reputation: 21
I would like to use the document.getElemntById
as a "name" of listing array
function aircraft(operator) {
var typ = document.getElementById('typ').value;
var B738 = ['39.5', '35.8', '12.5', '2', '79000', '2930', 'M0.785', '189'];
document.getElementById('dlugosc').textContent = "Długość: " + B738[0] + 'm';
document.getElementById('szerokosc').textContent = "Szerokość: " + B738[1] +'m';
document.getElementById('wysokosc').textContent = "Wysokość: " + B738[2] +'m';
document.getElementById('silniki').textContent = "Ilość silników: " + B738[3];
document.getElementById('mtow').textContent = "MTOW: " + B738[4] + 'kg';
document.getElementById('zasieg').textContent = "Zasięg: " + B738[5] + 'nm';
document.getElementById('predkosc').textContent = "Prędkość max.: " + B738[6];
document.getElementById('pasazerowie').textContent = "Pasażerowie max.: " + B738[7];
}
And I can list all from B738 array, but I would like to have more arrays and use diffrent names of listing arrays like var typ
, but it doesnt work
function aircraft(operator) {
var typ = document.getElementById('typ').value;
var B738 = ['39.5', '35.8', '12.5', '2', '79000', '2930', 'M0.785', '189'];
var A320 = ['39.5', '35.8', '12.5', '2', '79000', '2930', 'M0.785', '189'];
document.getElementById('dlugosc').textContent = "Długość: " + typ[0] + 'm';
document.getElementById('szerokosc').textContent = "Szerokość: " + typ[1] +'m';
document.getElementById('wysokosc').textContent = "Wysokość: " + typ[2] +'m';
document.getElementById('silniki').textContent = "Ilość silników: " + typ[3];
document.getElementById('mtow').textContent = "MTOW: " + typ[4] + 'kg';
document.getElementById('zasieg').textContent = "Zasięg: " + typ[5] + 'nm';
document.getElementById('predkosc').textContent = "Prędkość max.: " + typ[6];
document.getElementById('pasazerowie').textContent = "Pasażerowie max.: " + typ[7];
}
Upvotes: 1
Views: 42
Reputation: 218828
You can't directly use the value of typ
as a variable in the way you're attempting, but you can use it as an indexer on an object. Make your arrays properties on an object:
var myArrays = {
B738: ['39.5', '35.8', '12.5', '2', '79000', '2930', 'M0.785', '189'],
A320: ['39.5', '35.8', '12.5', '2', '79000', '2930', 'M0.785', '189']
};
Then you can use typ
to reference those properties:
document.getElementById('dlugosc').textContent = "Długość: " + myArrays[typ][0] + 'm';
Upvotes: 1