Curs Javascript

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 afiseaza textul oblic?
<strong> <pre> <em>
<p>Cursuri, Jocuri, Anime: <em>www.MarPlo.net</em></p>
Care proprietate CSS defineste spatiul dintre continutul elementului si bordura lui?
margin padding position
h3 {
  padding: 2px 0.2em;
}
Clic pe metoda ce returneaza primul element indicat de selectorii specificati.
getElementsByName() querySelector() querySelectorAll()
// preia primul Div cu class="cls", si afiseaza continutul
var elm = document.querySelector("div.cls");
alert(elm.innerHTML);
Indicati variabila PHP ce contine datele din formular trimise cu method="post".
$_SESSION $_GET $_POST
if(isset($_POST["field"])) {
  echo $_POST["field"];
}
Indicati pronumele corespunzator celui din paranteza in propozitia: "(Noi) speak english".
I They We
We speak english.
- Noi vorbim engleza.
Indicati pronumele corespunzator celui din paranteza in propozitia: "(Noi) hablamos español".
Ellos Vosotros Nosotros
Nosotros hablamos español.
- Noi vorbim spaniola.
Inlocuieste nume de variabile JavaScript din sir cu valoarea lor

Last accessed pages

  1. Cursuri Limba Italiana (7137)
  2. Adverbele in limba engleza - Adverbs (33730)
  3. Invatare Vue.js - Tutoriale (2602)
  4. Ora curenta JavaScript (2176)
  5. Curs de Miracole (4659)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (372)
  2. Gramatica limbii engleze - Prezentare Generala (212)
  3. Gramatica limbii spaniole. Indrumator si prezentare generala (165)
  4. Coduri pt culori (157)
  5. Cursuri limba engleza gratuite si lectii online (138)