Diferenta la nume cu dollar $ si sub-liniuta in javascript

Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
Avatar utilizator
trif
Mesaje:500

Diferenta la nume cu dollar $ si sub-liniuta in javascript

Buna ziua,
Am tot vazut in diverse coduri urmatoarele variabile:

Cod: Selectaţi tot

var text=..
var $text=..
var _text=..
Am tot cautat pe net despre asta dar nu am gasit ceva concret.
Daca stiti sa explicati si sa dati exemple.

Astept raspuns.
Cu stima Trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo Mesaje:4343
Salut
Ca regula de sintaxa in JavaScript: "Numele de variabile si functii pot incepe cu orice litera, $ si '_', fara numere sau alte caractere speciale la inceput".
In realitate, in JavaScript nu exista nici o diferenta intre caracterele dolar $, sub-liniuta "_" si literele din alfabet, si nici nu e vreo legatura speciala intre ele. Aceste caractere $, '_' sunt tratate ca orice litera normala.
Parand ceva diferit mintii, dar simplu, ele pot ajuta la a face un cod mai scurt, cu un model logic mai clar si mai usor de inteles pentru cel care scrie codul.
Cum ar fi: Cand sunt variabile sau functii cu proprietati similare sau legate intre ele, poti folosi (ca o conventie personala) acelasi nume, aplicand $ sau _.
De exemplu:

Cod: Selectaţi tot

function className(){
  var obj ={};

  //set property:value in obj
  function $obj(p, v){
    obj[p] = v;
  }

  //get property value from obj
  function _obj(p){
    return obj[p];
  }
}
Un alt exemplu, daca faci un script JS mai amplu in care se foloseste mult: "document.getElementById('idul')" si "document.querySelector('css sel')", poti simplifica simtitor codul folosind $ si _:

Cod: Selectaţi tot

function className(){
  //return element by id
  function $(id){
    return document.getElementById(id);
  }

  //return element by selector (sel)
  function _(sel){
    return document.querySelector(sel);
  }

  //using $() si _(), for a more simply and short code
  var methodName = function(){
    var e1 = $('id1');
    var e2 = $('id2');
    var es1 = _('#id1 .class');
    var es2 = _('#id2 .class');
    //...
  }
}
- Pe scurt, nu reprezinta nimic special, si se pot folosi cum vrei ca sa organizezi codul eficient.
Legat de acest subiect, poti gasi pe internet, la cautare: "$ and _ in JavaScript" articole care spun acelasi lucru.