Functia prezentata aici poate fi utilizata pentru a inlocui nume de variabile (proprietate obiect, sau element array) JavaScript dintr-un sir, cu valoarea lor definita in JavaScript, folosind RegExp.
// Functia inlocuieste nume de variabile (array, proprietate_obiect) JS cu valoarea asociata lor
// Primeste sirul /-template. Returneaza sirul cu numele inlocuite
function replaceStrVar(str){
 // Curs JavaScript & jQuery - https://marplo.net/javascript/
  str = str.replace(/%(.*?)%/gi, function(a,b) {
    // daca numele este element array, altfel e proprietate_obiect sau variabila
    if(b.match(/[a-z0-9_]+\[[a-z0-9_]+\]/i)) {
      var arritm = b.match(/([a-z0-9_]+)\[([a-z0-9_]+)\]/i);      // obtine un array cu partile din nume
      return window[arritm[1]][arritm[2]];
    }
    else {
      var voitm = b.split('.');
      return (voitm.length == 2) ? window[voitm[0]][voitm[1]] : window[voitm[0]];
    }
  });

  return str;
}
- Numele de variabila /proprietate_obiect /element_array in sir trebuie adaugate intre aceste doua caractere %...% .

Aceasta functie poate fi utilizata pt a crea un simplu sir-template in JavaScript.

Iata un exemplu de utilizare a functiei replaceStrVar(), cu o variabila, un array si un obiect (pt a vedea ca functioneaza toate), si un sir-template cu numele lor care va fi inlocuit cu valoarea asociata lor in JavaScript, apoi rezultatul e adaugat intr-un tag HTML.
<div id="testpl">Sir Template:<br/><span class="sbi">Site-ul: &lt;b&gt;%website%&lt;/b&gt; contine: %obj.content1%, si are aproximativ &lt;b&gt;%visits[2]%&lt;/b&gt; vizitatori unici pe zi.</span></div>
<button onclick="testpl()">Test replaceStrVar()</button>

<script type="text/javascript"><!--
// Functia inlocuieste nume de variabile (array, proprietate_obiect) JS cu valoarea asociata lor
// Primeste sirul /-template. Returneaza sirul cu numele inlocuite
function replaceStrVar(str){
 // JavaScript & jQuery Courses - http://www.coursesweb.net/javascript/
  str = str.replace(/%(.*?)%/gi, function(a,b) {
    // daca numele este element array, altfel e proprietate_obiect sau variabila
    if(b.match(/[a-z0-9_]+\[[a-z0-9_]+\]/i)) {
      var arritm = b.match(/([a-z0-9_]+)\[([a-z0-9_]+)\]/i);      // obtine un array cu partile din nume
      return window[arritm[1]][arritm[2]];
    }
    else {
      var voitm = b.split('.');
      return (voitm.length == 2) ? window[voitm[0]][voitm[1]] : window[voitm[0]];
    }
  });

  return str;
}

  /* Test replaceStrVar() */

var website = 'https://marplo.net';      // variabila simpla
var visits = new Array(1000, 2000, 5000);        // array

// obiect
var obj = new Object();
 obj.content1 = 'Cursuri Web Developmeent, Limbi Straine';
 obj.content2 = 'Cursuri, Jocuri, Anime';

// Sirul (template)
var tpl = 'Site-ul: <b>%website%</b> contine: %obj.content1%, si are aproximativ <b>%visits[2]%</b> vizitatori unici pe zi.';

// adds the replacement in #testpl HTML element
function testpl(){
  document.getElementById('testpl').innerHTML = replaceStrVar(tpl);
}
//-->
</script>
Rezultat:
Sir Template:
Site-ul: <b>%website%</b> contine: %obj.content1%, si are aproximativ <b>%visits[2]%</b> vizitatori unici pe zi.
- Ca sa vedeti rezultatul, clic ->

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag este element de tip bloc?
<div> <img> <span>
<div>Web Programming and Development</div>
Care cod CSS afiseaza textul subliniat?
font-style: italic; text-decoration: underline; font-weight: 500;
h2 {
  text-decoration: underline;
}
Clic pe functia JavaScript care apeleaza o alta functie dupa un anumit timp.
insertBefore() setTimeout() querySelector()
function someFunction() { alert("CoursesWeb.net"); }
setTimeout("someFunction()", 2000);
Clic pe instructiunea care returneaza numarul total de elemente dintr-un array asociativ.
count($array) count($array, 1) strlen()
$food =["fruits" =>["banana", "mar"), "veggie" =>["ceapa", "rosie"));
$nr_food = count($food, 1);
echo $nr_food;       // 6
Indicati Viitorul Perfect la negativ al verbului din paranteze, in propozitia: "The child (to not play) by Sunday".
has't played haven't been playing will haven't played
The child will haven't played by Sunday.
- Copilul nu s-ar fi jucat pana duminica.
Indicati Viitorul Perfect pentru verbul "contar" (a povesti) la forma "Él".
habrá contado va a contar contaba
Él no habrá contado el cuento.
- El nu ar fi spus povestea.
Inlocuieste nume de variabile JavaScript din sir cu valoarea lor

Last accessed pages

  1. Introducere in HTML (6374)
  2. Conditional IF in Limba Engleza - Fraze Conditionale (26514)
  3. Demonstrative (319)
  4. Stilizare tabele HTML cu CSS (877)
  5. Gramatica limbii spaniole. Indrumator si prezentare generala (17913)

Popular pages this month

  1. Gramatica limbii engleze - Prezentare Generala (3159)
  2. Conditional IF in Limba Engleza - Fraze Conditionale (2347)
  3. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (2127)
  4. Curs HTML gratuit Tutoriale HTML5 (1433)
  5. Prezentul simplu si continuu - Present Tense Simple and Continuous (1410)