online: 3; azi: 1074; total: 51529 Webdesign - Tutoriale-js - 06

Utilizare Variabila si Functie cu nume din sir in JavaScript

Pentru a accesa o variabila sau functie dinamic, cu nume dintr-un sir in JavaScript, folositi obiectul window , cu aceasta sintaxa:
window["nume_variabila"]

// Pt. Functii
window["nume_functie"](parametri)
Iata cateva exemple, vedeti explicatii in cod.
- Clic pe cod pentru a-l selecta.

1. Utilizare variabila cu nume din sir.
<script>
var vr_name = 'vr1';    // sir cu numele variabilei

var vr1 = 'coursesweb.net/';

// acceseaza variabila cu numele retinut in vr_name
// window[vr_name] /window["vr1"] este valoarea lui vr1
var site = 'http://'+ window[vr_name];

// Test
alert(site);    // 
</script>

2. Utilizare variabila dinamic, cu nume retinut in sir intr-un obiect.
<script>
// obiect cu siruri cu nume de variabile
var vr_name = {'v1':'vr1', 'v2':'vr2'};
var vr1 = 'coursesweb.net/';
var vr2 = 'google.com';

// acceseaza variabila dinamic, cu nume din sir, din vr_name
var i = 2;
var site = 'http://'+ window[vr_name['v'+ i]];

// Test
alert(site);    // http://google.com/
</script>

3. Apelare functie cu nume din sir.
<script>
function f1(a, b) {
  return a + b;
}

var f_name = 'f1';    // sir cu nume de functie

// utilizeaza functia cu nume din f_name
// window[f_name](parametri) apeleaza f1(parametri)
var sum = window[f_name](12, 23);

// Test
alert(sum);    // 35
</script>

4. Utilizare metoda cu nume din sir dintr-un obiect
- sintaxa: obiect["nume_metoda"](parametri)
<script>
// obiect cu siruri cu nume de metode
var methods = {'m1':'hi1', 'm2':'hi2'};

// obiect cu doua metode
var obj = {
  'hi1': function(name) {
    return 'Hello dear '+ name;
  },
  'hi2': function(name) {
    return 'Salut draga '+ name;
  }
};

// utilizeaza metoda din obj cu nume din sir din obiectul methods
var hi = obj[methods['m2']]('EU');

// Test
alert(hi);    // Salut draga EU
</script>