Underscore.js

Screenshot Software:
Underscore.js
Detalii soft:
Versiune: 1.8.3 Actualizat
Incarca data: 11 Apr 15
Producător: Jeremy Ashkenas
Licenţă: Gratuit
Popularitate: 176

Rating: nan/5 (Total Votes: 0)

Porțiuni de subliniere sunt inspirate de sau împrumutate de la Oliver Steele lui funcțională, prototype.js și John Resig Micro-templating.
Se adaugă suport de programare funcțional, dar fără a extinde oricare dintre built-in JavaScript obiectelor.
Subliniere oferă funcții de 60 și ceva de care să sprijine atât suspecții funcționale obișnuite: harta, selectați, invoca & mdash; precum și ajutoare mai specializate: funcția de legare, JavaScript templating, testare adâncime egalitatea, și așa mai departe. Acesta delegați la built-in functii, dacă prezintă browsere, astfel moderne vor folosi implementările native ale foreach, harta, reduce, filtru, fiecare, unele și indexOf.
Porturile de Underscore.js sunt disponibile pentru:
PHP
Piton
Perl

Ce este nou în această versiune:

  • Adaugă o metodă _.create, ca redusi Versiunea de Object.create.
  • Funcționează în jurul unui bug iOS care poate provoca necorespunzător isArrayLike să fie JIT-ed. Stabilește, de asemenea o eroare la trecerea la 0 la isArrayLike.

Ce este nou în versiunea 1.8.2:

  • Corecții / schimba unele vechi de Internet Explorer și Comportamentul legat caz margine.

Ce este nou în versiunea 1.7.0:

  • Pentru consecvență și viteza pe diferite browsere, subliniere ignoră acum Metode matrice native pentru foreach, harta, reduce, reduceRight, filtru, fiecare, unii, indexOf și lastIndexOf. & Quot; Sparse & quot; matrice sunt oficial mort în subliniere.
  • Adăugat _.iteratee pentru a personaliza iteratori folosite de funcții de colectare. Multe metode de subliniere va avea un argument șir de ușor căutările stil _.property, un obiect de filtrare stil _.where, sau o funcție ca un apel invers personalizat.
  • Adaugat _.before ca o contrapartidă la _.after.
  • Adăugat _.negate pentru a inversa valoarea de adevăr a unui predicat a trecut-in.
  • Adăugat _.noop în funcție la îndemână placeholder gol.
  • _. IsEmpty acum lucreaza cu obiecte argumente.
  • _. A pazeste acum cu obiecte nullish.
  • Metode de bază, cum ar fi Override fiecare, iar unele și vor fi folosite intern de alte funcții de subliniere prea.
  • Funcțiile de evacuare se ocupe backticks (`), pentru a face cu o IE ≤ 8 bug.
  • Pentru coerență, _.union și _.difference acum lucra doar cu tablouri și nu args variadic.
  • _. Memoize expune cache de valori memoized ca o proprietate cu privire la funcția sa întors.
  • _. Alege iteratee și argumente context acceptă un apel invers mai avansat.
  • șabloane de subliniere nu mai accepta un obiect inițial de date. _.template returnează întotdeauna o funcție acum.

Ce este nou în versiunea 1.5.0:

  • O hartă sursă este acum furnizat pentru depanare ușoară a minified producție construi de subliniere.
  • Funcția implicite acum suprascrie doar valori nedefinite, cele care nu nule.
  • Eliminat capacitatea de a apela _.bindAll fără argumente numele metodei. E destul de mult întotdeauna mai înțelept să-lista albă numele metodelor pe care doriți pentru a lega.
  • Eliminat capacitatea de a apela _.after cu un număr de invocare a zero. Numărul minim de apeluri este (natural) acum 1.

Ce este nou în versiunea 1.4.4:

  • Adaugat _.findWhere, pentru identificarea primul element într-o listă care se potriveste un anumit set de chei și valori.
  • Adăugat _.partial, pentru aplicarea partial o functie fara a schimba referire dinamic la acest lucru.
  • bind simplificată prin eliminarea unele cazuri marginale implică funcții constructor. Pe scurt:. Nu _.bind constructori tale
  • O optimizare minor a invoca.
  • Fix bug în versiunea minified datorită Minifier optimizarea-away incorect isFunction.

Ce este nou în versiunea 1.4.3:

  • Adăugat un iterator implicit _.identity la countBy și groupBy.
  • Funcția uniq poate lua acum matrice, iterator, context ca lista de argumente.
  • Timpii întoarce acum gama mapate rezultatelor iteratori.
  • simplificată și bug-uri fixate în acceleratie.

Ce este nou în versiunea 1.4.2:

  • Pentru compatibilitate, a revenit la pre-1.4. 0 comportament la trecerea nul la funcțiile repetare. Ei devin acum nu-op din nou.

Ce este nou în versiunea 1.4.0:

  • Adaugata o funcție de perechi, pentru a transforma un obiect JavaScript în [cheie, valoare] perechi ..., precum și o funcție obiect, de conversie o serie de [cheie, valoare] perechi într-un obiect.
  • Adaugata o funcție countBy, pentru contorizarea numărului de obiecte dintr-o listă care se potrivesc anumite criterii.
  • Adaugata o funcție invertit, pentru efectuarea unui simplu inversare a tastelor și valorile într-un obiect.
  • Adaugata o funcție în cazul în care, pentru cazurile usoare de filtrare o listă de obiecte cu valori specifice.
  • Adaugata o funcție omite, pentru filtrarea unui obiect pentru a elimina anumite chei.
  • Adaugata o funcție aleatoare, pentru a reveni un număr aleatoriu într-un interval dat.
  • _. Funcțiile debounce'd reveni acum ultima valoare actualizată, functii la fel ca _.throttle'd face.
  • Funcția SortBy conduce acum un algoritm de sortare stabil.
  • Adaugata opțiunea fromIndex opțional la indexOf și lastIndexOf.
  • & quot; Sparse & quot; matrice nu mai sunt suportate în funcțiile repetare subliniaza. Utilizați o pentru locul (sau mai bine încă, un obiect).
  • Funcțiile MIN și MAX pot fi acum chemat de tablouri foarte mari.
  • Interpolare în șabloane reprezintă acum nulă și nedefinit ca șir gol.

Ce este nou în versiunea 1.3.2:

  • adăugat funcția alege, care vă permite să filtrați un obiect literal cu o listă albă de nume de proprietate permise.
  • adăugat funcția rezultat, pentru confortul atunci când lucrează cu API-uri care permit fie funcții sau proprietăți prime.
  • adăugat funcția isFinite, pentru că, uneori știind că o valoare este un număr pur si simplu nu este destul.
  • Funcția SortBy poate acum fi trecut numele șir de o proprietate de a utiliza ca ordinea de sortare pentru fiecare obiect.
  • uniq fixe pentru a lucra cu matrice rare.
  • Funcția diferență efectuează acum un superficial aplatiza în loc de adânc o atunci când calculul diferențelor matrice.
  • Funcția debounce are acum un parametru imediat, ceea ce va determina apel invers la foc pe loc de frunte de marginea posterioară.

Ce este nou în versiunea 1.3.1:

  • Adaugata o funcție _.has, ca sigur modalitate de a folosi hasOwnProperty.
  • Adaugata _.collect ca un alias pentru _.map. Smalltalkers, bucurați-vă.
  • Reverted o schimbare vechi, astfel încât _.extend va copia corect pe chei cu valori nedefinite din nou.
  • Bugfix pentru a opri evadarea slash în interpolări în _.template.

Ce este nou în versiunea 1.3.0:.

  • AMD (RequireJS) sprijin Eliminat din subliniere

Ce este nou în versiunea 1.2.4:

  • Pot (și, probabil, ar trebui să) scrie _.chain (lista) în loc de _ (lista) .chain ().
  • Fix pentru caractere scăpat din șabloane sublinia, precum și pentru sprijinirea particularizări de _.templateSettings care definesc doar una sau două dintre regexes necesare.
  • Fix pentru trecerea unui array ca prim argument pentru o funcție _.wrap'd.
  • Compatibilitate îmbunătățită cu ClojureScript, care adaugă o funcție de apel a String.prototype.

Ce este nou în versiunea 1.2.3:

  • domeniu dinamic este acum păstrate pentru _.template compilat funcții, astfel încât să puteți utiliza valoarea acestui dacă doriți.
  • sprijinul serie Sparse de _.indexOf, _.lastIndexOf.
  • Atât _.reduce și _.reduceRight pot acum fi trecut o valoare explicit nedefinit.

Ce este nou în versiunea 1.2.2:

  • trucurile continuat să semantică _.isEqual. Acum primitive JS sunt considerate echivalente cu versiunile lor împachetate, și matrice sunt comparate cu proprietățile lor numerice numai.
  • _. Nu mai scăpa încearcă să fie inteligente despre care nu dublu-evadeze entități HTML deja scăpat. Acum doar scapă indiferent.
  • În _.template, puteți pleca acum virgulă din declarații evaluate dacă doriți: & # x3c,%})% & # x3e,
  • .
  • _ după (apel invers, 0) va declanșa acum apel invers imediat, făcând & quot;. După & quot; mai ușor de utilizat, cu API-urile asincrone.

Ce este nou în versiunea 1.2.1:

  • Mai multe corecții importante bug-uri pentru _.isEqual, care ar trebui să facă acum mai bine pe Arrays mutante, și pe non-Array obiecte cu proprietăți lungime.
  • Pot acum _.groupBy (lista, "proprietate"), ca o comandă rapidă pentru gruparea valorilor de o anumită proprietate comună.
  • _. Funcțiile throttle'd foc acum imediat după invocare, și sunt apoi limitate-rate.
  • Cele mai multe dintre _.is [Type] nu mai verifică ducktype.
  • Funcția _.bind acum, de asemenea, funcționează pe constructori, o-la ES5 ... dar niciodată nu ar dori să utilizeze _.bind pe o funcție constructor.
  • _. Clone nu mai încheie tipuri non-obiect în obiecte.
  • _. Găsi și _.filter sunt acum nume preferate pentru _.detect si _.select.

Ce este nou în versiunea 1.2.0:

  • Funcția de _.isEqual suportă acum adevărat egalitate adâncime comparații, cu cecuri de structuri ciclice, datorită Kit Cambridge.
  • modele sublinia sprijini acum HTML evadeze interpolări, folosind & # x3c,% - ...% & # x3e; sintaxă.
  • Ryan Tenney contribuit _.shuffle, care foloseste o modificare Fisher-Yates pentru a vă oferi o copie a amestecat-o matrice.
  • _. Uniq pot fi acum trecut un iterator opțional, pentru a stabili de ce criterii un obiect ar trebui să fie considerate unice.
  • _. Dura acum are un argument opțional care va reveni ultimele n elemente ale listei.
  • A fost adăugată o nouă funcție _.initial, ca o oglindă a _.rest, care returnează toate valorile inițiale ale unei liste (cu excepția ultimului N).

Ce este nou în versiunea 1.1.7:

  • Adaugat _.groupBy, care agregate o colecție în grupuri de elemente, cum ar fi.
  • _.union adăugată și _.difference, pentru a completa (re-numit) _.intersection.
  • Diverse îmbunătățiri pentru sprijinirea matrice rare. _.toArray returnează acum o clona, ​​dacă a trecut direct un tablou. _.functions acum întoarce, de asemenea, numele de funcții care sunt prezente în lanțul prototip.

Ce este nou în versiunea 1.1.6:

  • _.after Adăugat, care va reveni o funcție că numai ruleaza dupa prima a fost numit un anumit număr de ori. _.invoke poate lua acum o referință funcție directă. _.every necesită acum o funcție iterator să fie adoptată, care reflectă API ECMA5. _.extend chei copii mai, atunci când valoarea este nedefinit. _.bind acum erori atunci când încearcă să se lege o valoare nedefinită.

Ce este nou în versiunea 1.1.4:

  • îmbunătățită respectarea metodele Array ES5 când trece nul ca o valoare. _.wrap acum seturi corect acest lucru pentru funcția de împachetat. _.indexOf are acum un steag opțional pentru identificarea indicelui de inserție într-o matrice care este garantat de a fi deja sortate.
  • Evitarea utilizării .callee, pentru a permite _.isArray să funcționeze corect în modul strict ES5 lui.

Ce este nou în versiunea 1.1.3:

  • În CommonJS, subliniere poate acum fi necesară doar :
  • var _ = necesită (& quot; subliniere & quot;). Funcțiile _.throttle adăugată și _.debounce.
  • Eliminat _.breakLoop, în favoarea unui stil ECMA5 ne-break-capabil fiecare implementare - aceasta elimină try / catch, și veți avea acum urme stiva mai bune pentru excepții care sunt aruncate într-o iterator subliniere. Îmbunătățit familia isType de funcții pentru o mai bună interoperabilitate cu Internet Explorer obiecte gazdă. _.template acum scapă corect backslash în șabloane. Îmbunătățit compatibilitatea _.reduce cu versiunea ECMA5: dacă nu treci o valoare inițială, este folosit primul element din colecție. _.each nu mai revine colectarea reiterat, pentru o mai bună coerență cu foreach ECMA5 lui.

Ce este nou în versiunea 1.0.4:

  • Funcția memoize _, care poate fi folosit pentru a. accelera calcule costisitoare repetate de cache rezultatele.

Ce este nou în versiunea 1.0.2:.

  • _.isArguments fixe Opera

Software similare

jDataView
jDataView

13 Apr 15

Egg.js
Egg.js

20 Jul 15

Alte software-uri de dezvoltator Jeremy Ashkenas

CoffeeScript
CoffeeScript

4 Jun 15

Docsplit
Docsplit

13 Apr 15

Docco
Docco

28 Feb 15

Comentarii la Underscore.js

Comentariile nu a fost găsit
Adauga comentarii
Porniţi pe imagini!
Cauta dupa categorie