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
Ce atribut indica faptul ca un camp de formular trebuie completat?
required="required" autofocus="autofocus" placeholder="text"
<input type="text" name="name1" required="required" />
Ce metoda CSS misoreaza sau mareste dimensiunile unui element (inclusiv continutul)?
translate() scale() skew()
#some_id:hover {
  transform: scale(2, 1.5);
  -ms-transform: scale(2, 1.5);    /* IE 9 */
  -moz-transform: scale(2, 1.5);   /* Firefox */
}
Click pe metoda obiectului Date care returneaza ziua din luna.
setDate() getMonth() getDate()
var rightnow = new Date();
var day = rightnow.getDate();
alert(day);
Ce functie este folosita pentru a incarca un fisier pe server?
is_file() move_uploaded_file() fopen()
if(move_uploaded_file($_FILES["field_name"]["tmp_name"], "dir/file_name")) {
  echo "Fisierul a fost incarcat";
}
Cum se spune in engleza expresia: "Ploua cu galeata"?
rain cats and dogs rain buckets quiet rain
In Bucharest it`s raining cats and dogs.
- In Bucuresti ploua cu galeata.
Cum se spune in spaniola expresia: "Ploua cu galeata"?
llover cubo llover a cántaros lluvia tranquila
En Madrid está lloviendo a cántaros.
- In Madrid ploua cu galeata.
Inlocuieste nume de variabile JavaScript din sir cu valoarea lor

Last accessed pages

  1. Verbe - Exercitii si teste engleza incepatori (27147)
  2. Prezentul simplu - Exercitii si teste incepatori (70507)
  3. Verbe modale 2 - Teste incepatori (9957)
  4. Coduri pt culori (74040)
  5. Curs HTML gratuit Tutoriale HTML5 (197815)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (296)
  2. Curs HTML gratuit Tutoriale HTML5 (230)
  3. Coduri pt culori (177)
  4. Creare si editare pagini HTML (133)
  5. Gramatica limbii engleze - Prezentare Generala (124)