Jei porcijos pabrėžti įkvėpė arba pasiskolinti iš Oliverio Steele funkcionalus, prototype.js ir Jonas Resig Micro-struktūravimo.
Funkcinis programavimas parama pridūrė, tačiau neišplečiant bet built-in JavaScript objektus.
Pabrėžti suteikia 60-nelyginis funkcijas, palaiko tiek įprastų funkcinių įtariamuosius: Žemėlapis, pasirinkite, remtis & mdash; taip pat labiau specializuotų pagalbininkai: funkcija privalomas JavaScript šablonų, gilus lygybės bandymai ir pan. Jis deleguoja built-in funkcijos, jei yra, todėl šiuolaikinių naršyklių naudosime gimtoji realizacijomis foreach, žemėlapis, sumažinti, filtras, kas, o dalis indexOf.
Uostai Underscore.js yra prieinami:
PHP
Pitonas
Perlas "
Kas naujo , šioje laidoje:
- nuotraukai _.create būdas, kaip Trumpesnė žemyn versija Object.create.
- Kūrinių aplink iOS klaida, kuri gali sukelti netinkamai isArrayLike būti JTG-ED. Taip pat nustato triktį, kai artimųjų nuo 0 iki isArrayLike.
Kas naujo versijos 1.8.2:
- Išspręsti / keičia kai kurių senų, interneto naršyklę ir susiję kraštas atveju elgesys.
Kas naujo versijos 1.7.0:
- Siekiant nuoseklumo ir greičio visoje naršyklių, pabrėžti dabar ignoruoja gimtoji masyvo metodai foreach, žemėlapis, sumažinti, reduceRight, filtrą, kiekvienam, nors, indexOf ir lastIndexOf. & Quot; Sparse & quot; matricos yra oficialiai miręs pabrėžti.
- Pridėta _.iteratee pritaikyti iteratory naudojamus surinkimo funkcijas. Daugelis pabrėžti metodai bus string argumentą būtų lengviau _.property stiliaus paieška "prašymas dėl _.where stiliaus filtravimo objektą, arba veikti kaip pagal užsakymą atg.
- patalpintas _.before kaip kolega į _.after.
- Pridėta _.negate invertuoti tiesos vertę praėjo-in predikato.
- Pridėta _.noop kaip patogus tuščias imituojančiu funkciją.
- _. IsEmpty dabar dirba su argumentais objektų.
- _. Jau saugo nuo nullish objektų.
- Valdymas bazė metodai, tokie kaip vienas, o kai jie bus naudojamas viduje kitų pabrėžti funkcijų per daug.
- evakuacijos funkcijos rankena atvirkštiniai apostrofai (`), kad galėtų susidoroti su IE ≤ 8 klaidą.
- Siekiant nuoseklumo, _.union ir _.difference dabar veikia tik su matricomis, o ne variadic ARG.
- _. Memoize atskleidžia, kad memoized vertybių talpyklą kaip dėl grąžinto funkcija turtą.
- _. Pikapas priima iteratee ir kontekstas argumentus daugiau pažangių atg.
- pabrėžti šablonai nebegali priimti pradinį duomenų objektą. _.template visada grąžina funkcija dabar.
Kas naujo versijos 1.5.0:
- šaltinis žemėlapis dabar tiekiamas lengviau derinti su minified gamyba komponavimo pabrėžti.
- pagal nutylėjimą funkcija dabar yra viršesnė tik neapibrėžtas reikšmes, NOT NULL tie.
- Pašalinta galimybę skambinti _.bindAll be metodo pavadinimas argumentais. Tai gana daug visada protingiau balta sąrašą iš metodų pavadinimai norite susieti.
- Pašalinta galimybę skambinti _.after su pritaikymo skaičius nulio. Minimalus skambučių skaičius yra (natūraliai): 1.
Kas naujo versijos 1.4.4:
- patalpintas _.findWhere, ieškant pirmąjį elementą sąraše, kuris atitinka tam tikrą rinkinį raktus ir reikšmes.
- Pridėta _.partial, už dalinai taikant funkciją nekeičiant jos dinamiška nuoroda į tai.
- Supaprastinta bind pašalinant kai kurias krašto atvejų, susijusių konstruktorius funkcijas. Trumpai:. Nereikia _.bind savo konstruktorių;
- nepilnametis optimizavimas remtis.
- Nustatyti klaidą į minified versija dėl minifier neteisingai optimizuoti-toli isFunction.
Kas naujo versijos 1.4.3:
- Pridėta numatytąją _.identity iteratorių į countBy ir groupBy.
- Uniq funkcija dabar gali priimti masyvas, iteratorių, kontekste, nes argumentų sąrašo.
- laikai veikti dabar grąžina kartografuoti masyvas iteratorių rezultatus.
- supaprastinta ir Suremontuota greičiu.
Kas naujo 1.4.2 versija:
- Naudotos atgalinio suderinamumo, grįžo į pre-1.4. 0 elgesys praeinant niekinis, kad iteracijos funkcijas. Jie tapo ne-OPS dar kartą.
Kas naujo versijos 1.4.0:
- Pridėta poros funkciją, tekinimo JavaScript objektą į [raktas reikšmė] porų ... taip pat objekto funkciją, už konvertavimą [raktas reikšmė] porų masyvo į objektą.
- Pridėta countBy funkciją, skaičiavimui iš objektų sąrašo, kuris atitinka tam tikrą kriterijų.
- Pridėta invertuotojo funkciją, atlikti paprastą apverčiant raktus ir vertes objektas.
- Pridėta kur funkciją, už paprastus atvejus filtravimo sąrašą objektų, turinčių specifinių vertybes.
- Pridėta žinutę praleisti funkciją, filtravimo objektą pašalinti tam tikrus raktus.
- Pridėta atsitiktinis funkciją, jei norite grįžti atsitiktinių skaičių per tam tikrą intervalą.
- _. Debounce'd funkcijos dabar grįžti savo Atnaujinta vertę, tiesiog kaip _.throttle'd funkcijos daryti.
- SortBy funkcija dabar veikia stabiliai rūšiavimo algoritmą.
- Pridėta papildomą fromIndex parinktį indexOf ir lastIndexOf.
- & quot; Sparse & quot; matricos yra nebepalaikomi pabrėžti iteracijos funkcijas. Naudokite už vietoj (arba dar geriau, objektas).
- MIN ir MAX funkcijos gali dabar būti vadinamas labai didelių masyvų.
- interpoliuojant šablonų dabar atstovauja niekinis ir neapibrėžta kaip tuščią eilutę.
Kas naujo 1.3.2 versijos:
- Pridėta paėmimo funkciją, kuri leidžia jums filtruoti objektas pažodinis su leidžiamų nuosavybės pavadinimų baltąjį sąrašą.
- Pridėta rezultatas funkciją, dėl patogumo dirbant su API, kurie leidžia nei su funkcijas arba žaliavinio savybes.
- Pridėta isFinite funkciją, nes kartais žinant, kad reikšmė yra skaičius tiesiog yra ne visai pakankamai.
- SortBy funkcija dabar gali būti išlaikęs string pavadinimas turtą naudoti kaip rūšiavimo tvarka dėl kiekvieno objekto.
- Fiksuoti Uniq dirbti su retais matricos.
- skirtumas funkcija dabar atlieka sekli priploti vietoj gilaus, kai skaičiavimo masyvo skirtumus.
- debounce funkcija dabar užima nedelsiant parametrą, kuris sukels atgalinių šaudyti į pirmaujančių vietoj užpakalinės briaunos.
Kas naujo versijos 1.3.1:
- Pridėta žinutę _.has funkciją, kaip saugiau būdas naudoti hasOwnProperty.
- Pridėta _.collect kaip už _.map alias. Smalltalkers, džiaugtis.
- Reverted seną pokyčius taip, kad _.extend bus teisingai nukopijuokite raktus su neapibrėžtais vertybių dar kartą.
- Ištaisyta sustabdyti ištrūkti nerijos per interpoliacijos į _.template.
Kas naujo versijos 1.3.0.
- Pašalinta AMD (RequireJS) parama pabrėžti
Kas naujo versijos 1.2.4:
- Ar (ir tikriausiai turėtų) rašyti _.chain (sąrašas) vietoj _ (sąrašas) .chain ().
- Nustatyti ir pabėgo simbolių pabrėžti šablonus ir remti tinkinimo apie _.templateSettings kad tik nustatyti vieną ar du reikalaujamų įpraiškas.
- Nustatyti artimųjų masyvą kaip pirmojo argumento į _.wrap'd funkciją.
- Geresnis suderinamumas su ClojureScript, kuris prideda skambučių funkciją String.prototype.
Kas naujo versijos 1.2.3:
- Dinaminis taikymo sritis dabar saugomi surinkta _.template funkcijos, todėl galite naudoti šios vertės, jei jums patinka.
- Sparse masyvo parama _.indexOf, _.lastIndexOf.
- Abu _.reduce ir _.reduceRight dabar gali būti išlaikęs aiškiai neapibrėžtą reikšmę.
Kas naujo versijos 1.2.2:
- Tęsinys tweaks _.isEqual semantika. Dabar JS primityvai yra laikomi lygiaverčiais jų suvynioti versijų ir matricos yra palyginti jų skaičių savybių tik.
- _. Ištrūkti nebėra bando būti protingas apie ne dukart pabėgti jau pabėgo HTML trumpinius. Dabar ji tiesiog pabėga nesvarbu. "
- Be _.template, galite dabar palikti Kabliataškis iš įvertintų teiginių, jei norite: & # x3c;%})% & # x3e; .
- _ po (atgalinio ryšio, 0), dabar sukelti atg karto, todėl & quot;. Po & quot; lengviau naudoti su asinchroninio API.
Kas naujo versijos 1.2.1:
- Keletas svarbių pataisymai už _.isEqual, kuris dabar turėtų geriau daryti mutavusių Arrays, o ne Array objektai, kurių ilgis savybių.
- Ar dabar _.groupBy (sąrašas, "turtas"), kaip būtų galima grupuoti vertes tam tikros bendrosios nuosavybės nuorodą.
- _. Throttle'd funkcijos dabar ugnį iš karto po pritaikymo ir yra norma ribotos vėliau.
- Dauguma _.is [tipas] tikrina nebėra ducktype.
- _.bind funkcija dabar veikia konstruktorių, la ES5 ... bet jūs niekada norite naudoti _.bind ant konstruktorius funkciją.
- _. Klonas nebėra antklodės ne objektų tipų objektų.
- _. Rasti ir _.filter dabar yra pageidaujami vardai _.detect ir _.select.
Kas naujo versijos 1.2.0:
- _.isEqual funkcija dabar palaiko tikrąją giliai lygybę palyginimai su patikrų ciklinių struktūrų dėka Kit Cambridge.
- pabrėžti šablonai dabar palaiko HTML pabėgti interpoliacijos, naudojant & # x3c;% - ...% & # x3e; sintaksė.
- Ryanas Tenney prisidėjo _.shuffle, kuri naudoja modifikuotą Fisher-Yates suteikti jums stipriu kopiją masyvą.
- _. Uniq metu gali būti perduota neprivaloma iteratorių, nustatyti pagal kokius kriterijus objektas turėtų būti laikomas unikalus.
- _. Trukti dabar užima papildomą argumentą, kuris bus grąžinti paskutines N elementus sąraše.
- Naujas _.initial funkcija buvo pridėta, kaip _.rest veidrodis, kuris grąžina visas pradines reikšmes sąrašą (išskyrus paskutinę N).
Kas naujo versijos 1.1.7:
- patalpintas _.groupBy, kuris sujungia kolekciją į grupės, pavyzdžiui, daiktų.
- Pridėta _.union ir _.difference, papildyti (pervadintas) _.intersection.
- Įvairūs patobulinimai paramos nedidelio matricos. _.toArray dabar grįžta klonas, jei tiesiogiai perduodama masyvą. _.functions dabar grįžta funkcijų, esančių prototipo grandinės pavadinimus.
Kas naujo versijos 1.1.6:
- Pridėta _.after, kuris grįš funkciją kad veikia tik pirmą kartą vadinamas nurodyta skaičių kartų. _.invoke dabar gali priimti tiesiogiai priklauso nuorodą. _.every dabar reikia iteratoriaus funkcija turi būti priimtas, kuri atspindi ECMA5 API. _.extend nebėra kopijos raktai, kai vertė yra neapibrėžta. _.bind dabar klaidų bandant susieti neapibrėžtą reikšmę.
Kas naujo versijos 1.1.4:
- Geresnis atitiktis ES5 anketa Array metodus, priimdamas niekinis, nes vertę. _.wrap dabar teisingai nustato šis už suvynioti funkcija. _.indexOf dabar užima papildomą vėliava rasti įterpimo indeksą masyve, kurią garantuoja jau būti rūšiuojami.
- Vengti .callee naudojimą, kad būtų galima _.isArray tinkamai dirbti ES5 anketa griežtai režimu.
Kas naujo versijos 1.1.3:
- Be CommonJS, pabrėžti dabar gali būti reikalaujama tik su
- var _ = reikalauti (& quot; pabrėžti & quot;). Pridėta _.throttle ir _.debounce funkcijos.
- Pašalinta _.breakLoop, naudai yra ECMA5 stiliaus un-break-sugebėti kiekvienam įgyvendinti - tai pašalina TRY / laimikį, ir jūs dabar turi geresnius kamino pėdsakus dėl išimčių, kurios metamos per pabrėžti iteratoriaus. Pagerino isType šeimos funkcijas geriau sąveikos su Internet Explorer priimančiųjų objektų. _.template dabar teisingai išsiskirs grįžtamojo nerija bruožus šablonus. Patobulinta _.reduce suderinamumą su ECMA5 versija: jei jūs neturite praeiti pirminę vertę, pirmasis elementas kolekcijoje yra naudojama. _.each nebėra grįžta pakartotinio rinkimo, siekiant geriau suderinti su ECMA5 foreach.
Kas naujo versijos 1.0.4:
- memoize funkcija, kuri gali būti naudojama _. paspartinti brangių pasikartojančių skaičiavimų iki spartinimo rezultatus.
Kas naujo versijos 1.0.2.
- Fiksuoti _.isArguments Opera "
Komentarai nerastas