This translation is in progress.
JavaScript (JS) on kevyt, tulkattu, tai juuri-ajallaan käännetty ohjelmointikieli, joka pitää funktioita "ensimmäisen luokan kansalaisina". Vaikka se tunnetaan parhaiten verkkoselaimessa toimivana skriptauskielenä, sitä käyttävät myös monet ei-selainpohjaiset ympäristöt, kuten Node.js, Apache CouchDB ja Adobe Acrobat. JavaScript on prototyyppipohjainen, yksisäikeinen, dynaaminen ohjelmointikieli, joka tukee monia eri ohjelmintitapoja kuten: olio-ohjelmointi-, imperatiivista- ja funktionaalista ohjelmointityyliä. Lue lisää JavaScript:stä.
Tämä osa on omistettu pelkästään JavaScript:lle ohjelmointikielenä huomioimatta ominaisuuksia, jotka ovat eritysiä verkkosivuille tai muille ajoympäristöille. Tarkempaa tietoa selainten ohjelmointirajapinnoista, joita käytetään verkkosivujen kehittämisessä löytyy Web API- ja DOM osioista.
JavaScript:n käyttämä standardi on ECMAScript. Vuodesta 2012 lähtien, kaikki modernit selaimet tukevat täysin ECMAScript 5.1:tä ja sitä vanhemmat selaimet tukevat vähintään ECMAScript 3:sta. Vuonna 2015 kesäkuun 17., ECMA International julkaisi kuudennen version ECMAScript:stä, jonka virallinen nimitys on ECMAScript 2015, tätä kutsuttiin alunperin ECMAScript 6 tai ES6:ksi. Siitä lähtien, ECMAScript standardia on päivitetty vuosittain. Tämä dokumentaatio viittaa tämänhetkiseen vedokseen, mikä on tällä hetkellä ECMAScript 2020.
JavaScript:iä ei kannata sekoittaa Java ohjelmointikieleen. Molemmat "Java" ja "JavaScript" ovat Oraclen tuotemerkkejä, mutta siitä huolimatta, näillä kahdella ohjelmointikielellä on hyvin erilainen syntaksi, semantiikka ja käyttökohteet.
Oppaita
Opi JavaScript:iä oppaiden avulla.
Aloittelijoille
Suuntaa Javascript:n opiskelu osioon jos haluat oppia JavaScript:iä mutta sinulla ei ole aikaisempaa kokemusta Javascript -ohjelmoinnista. Sieltä löydät seuraavat itseopiskelumoduulit:
- JavaScript enimmäiset askeleet
- Tämä osio vastaa kysymyksiin "mitä JavaScript on?", "miltä se näyttää" ja "mitä sillä voi tehdä?". Samalla kuvataan myös kielen perusominaisuudet kuten muuttujat ja erilaiset perustietotyypit.
- JavaScript osakokonaisuudet
- Jatkaa JavaScript:n perustavien ominaisuuksien läpikäymimistä ja esittelee yleisimmät ohjausrakenteet kuten ehdolliset lausunnot, silmukat, funktiot ja tapahtumat.
- Esittelyssä JavaScript oliot
- On tärkeää ymmärtää JavaScript:n olio-pohjainen luonne jos haluat ymmärtää JavaScript:iä paremmin ja kehittyä taidoissasi kirjoittaa tehokasta JavaScript -koodia.
- Asynkroninen JavaScript
- Mitä on asynkroninen JavaScript, miksi se on tärkeää ja kuinka sitä voidaan käyttää tehokkaasti, esimerkiksi pitämällä suoritussäie vapaana suorittaessa säikeen pysäyttäviä operaatioita kuten noudettaessa resursseja verkkopalvelimelta.
- Käyttäjäpuolen web ohjelmointirajapinnat (API:t)
- Mitä API:t ovat ja kuinka käyttää joitain kaikista yleisimmistä API:sta, joihin törmätään yleisesti web-kehityksessä.
JavaScript opas
- JavaScript Opas
- Yksityiskohtaisempi opas JavaScript -ohjelmointikieeleen, joka on suunnattu lukijoille, joilla on aikaisempaa kokemusta ohjelmoinnista, jollain muulla ohjelmointikielellä.
Keskitaso
- Javascript uudelleen esiteltynä
- An overview for those who think they know about JavaScript.
- JavaScript tietorakenteet
- Overview of available data structures in JavaScript.
- Yhtä kuin -vertailu ja samankaltaisuus
- JavaScript provides three different value-comparison operations: strict equality using
===, loose equality using==, and theObject.is()method. - Closures
-
A closure is the combination of a function and the lexical environment within which that function was declared.
Edistyneet
- Periytyminen ja prototyyppiketjut
- Kuvas laajasti väärinkäsitetystä ja aliarvioidusta prototyyppipohjaisesta periytymistmallista.
- Strict -moodi
- Strict -moodi määritelee sen, että muuttujia ei pysty käyttämään ennen kuin ne ovat alustettu. Se on rajoitettu variaatio ECMAScript 5:stä, jolla on parempi suorituskyky ja jota on helpompi "debugata".
- JavaScript tyypitetyt taulukot
- JavaScript:n tyypitetyt taulukot mahdollistavat pääsyn raakaan binääridataan.
- Muistinhallinta
- Muistin elämänkaari ja roskien keruu JavaScript:ssä.
- Samanaikaisuusmalli ja tapahtumasilmukka
- JavaScript:n samankaltaisuusmalli perustuu "tapahtumasilmukkaan".
Reference
Browse the complete JavaScript reference documentation.
- Standard objects
- Get to know standard built-in objects
Array,Boolean,Date,Error,Function,JSON,Math,Number,Object,RegExp,String,Map,Set,WeakMap,WeakSet, and others. - Expressions and operators
- Learn more about the behavior of JavaScript's operators
instanceof,typeof,new,this, the operator precedence, and more. - Statements and declarations
- Learn how
do-while,for-in,for-of,try-catch,let,var,const,if-else,switch, and more JavaScript statements and keywords work. - Functions
- Learn how to work with JavaScript's functions to develop your applications.
Tools & resources
Helpful tools for writing and debugging your JavaScript code.
- Firefox Developer Tools
- Web Console, JavaScript Profiler, Debugger, and more.
- JavaScript Shells
- A JavaScript shell allows you to quickly test snippets of JavaScript code.
- TogetherJS
- Collaboration made easy. By adding TogetherJS to your site, your users can help each other out on a website in real time!
- Stack Overflow
- Stack Overflow questions tagged with "JavaScript".
- JavaScript versions and release notes
- Browse JavaScript's feature history and implementation status.
- JSFiddle
- Edit JavaScript, CSS, HTML and get live results. Use external resources and collaborate with your team online.
- Plunker
- Plunker is an online community for creating, collaborating on and sharing your web development ideas. Edit your JavaScript, CSS, HTML files and get live results and file structure.
- JSBin
-
JS Bin is an open source collaborative web development debugging tool.
- Codepen
-
Codepen is another collaborative web development tool used as a live result playground.
- StackBlitz
-
StackBlitz is another online playground/debugging tool, which can host and deploy full stack applications using React, Angular, etc.