2014-09-19 16:05:13 +00:00
|
|
|
---
|
|
|
|
contributors:
|
|
|
|
- ["Tenor Biel", "http://github.com/L8D"]
|
|
|
|
- ["Xavier Yao", "http://github.com/xavieryao"]
|
|
|
|
translators:
|
|
|
|
- ["Jelle Besseling", "https://github.com/Jell-E"]
|
2014-10-28 02:23:52 +00:00
|
|
|
- ["D.A.W. de Waal", "http://github.com/diodewaal"]
|
2015-10-28 22:07:20 +00:00
|
|
|
- ["Sam van Kampen", "http://tehsvk.net"]
|
2014-09-19 16:05:13 +00:00
|
|
|
filename: coffeescript-nl.coffee
|
|
|
|
---
|
|
|
|
|
2014-10-28 02:23:52 +00:00
|
|
|
CoffeeScript is een kleine programmeertaal die direct compileert naar
|
|
|
|
JavaScript en er is geen interpretatie tijdens het uitvoeren.
|
|
|
|
CoffeeScript probeert om leesbare, goed geformatteerde en goed draaiende
|
2015-10-28 22:07:20 +00:00
|
|
|
JavaScript code te genereren, die in elke JavaScript-runtime werkt, als een
|
2014-10-28 02:23:52 +00:00
|
|
|
opvolger van JavaScript.
|
2014-09-19 16:05:13 +00:00
|
|
|
|
2015-10-28 22:07:20 +00:00
|
|
|
Op [de CoffeeScript-website](http://coffeescript.org/), staat een
|
2014-10-28 02:23:52 +00:00
|
|
|
volledigere tutorial voor CoffeeScript.
|
2014-09-19 16:05:13 +00:00
|
|
|
|
|
|
|
``` coffeescript
|
|
|
|
# CoffeeScript is een taal voor hipsters.
|
|
|
|
# Het gaat mee met alle trends van moderne talen.
|
2014-10-28 02:23:52 +00:00
|
|
|
# Commentaar begint dus met een hekje, net zoals bij Python en Ruby.
|
2014-09-19 16:05:13 +00:00
|
|
|
|
|
|
|
###
|
|
|
|
Blokken commentaar maak je zo, ze vertalen naar JavaScripts */ en /*
|
2015-10-28 22:07:20 +00:00
|
|
|
in de uitvoer van de CoffeeScript-compiler.
|
2014-09-19 16:05:13 +00:00
|
|
|
|
|
|
|
Het is belangrijk dat je ongeveer snapt hoe JavaScript
|
|
|
|
werkt voordat je verder gaat.
|
|
|
|
###
|
|
|
|
|
|
|
|
# Toewijzing:
|
|
|
|
getal = 42 #=> var getal = 42;
|
|
|
|
tegengestelde = true #=> var tegengestelde = true;
|
|
|
|
|
|
|
|
# Voorwaarden:
|
|
|
|
getal = -42 if tegengestelde #=> if(tegengestelde) { getal = -42; }
|
|
|
|
|
|
|
|
# Functies:
|
|
|
|
kwadraat = (x) -> x * x #=> var kwadraat = function(x) { return x * x; }
|
|
|
|
|
|
|
|
vul = (houder, vloeistof = "koffie") ->
|
2015-10-28 21:37:54 +00:00
|
|
|
"Nu de #{houder} met #{vloeistof} aan het vullen..."
|
2014-09-19 16:05:13 +00:00
|
|
|
#=>var vul;
|
|
|
|
#
|
|
|
|
#vul = function(houder, vloeistof) {
|
|
|
|
# if (vloeistof == null) {
|
2014-10-28 02:23:52 +00:00
|
|
|
# vloeistof = "koffie";
|
2014-09-19 16:05:13 +00:00
|
|
|
# }
|
|
|
|
# return "Nu de " + houder + " met " + vloeistof + " aan het vullen...";
|
|
|
|
#};
|
|
|
|
|
|
|
|
# Reeksen:
|
|
|
|
lijst = [1..5] #=> var lijst = [1, 2, 3, 4, 5];
|
|
|
|
|
|
|
|
# Objecten:
|
|
|
|
wiskunde =
|
|
|
|
wortel: Math.sqrt
|
|
|
|
kwadraat: kwadraat
|
|
|
|
derdemacht: (x) -> x * kwadraat x
|
|
|
|
#=> var wiskunde = {
|
|
|
|
# "wortel": Math.sqrt,
|
|
|
|
# "kwadraat": kwadraat,
|
|
|
|
# "derdemacht": function(x) { return x * kwadraat(x); }
|
|
|
|
#}
|
|
|
|
|
|
|
|
# "Splats":
|
|
|
|
wedstrijd = (winnaar, lopers...) ->
|
|
|
|
print winnaar, lopers
|
|
|
|
#=>wedstrijd = function() {
|
|
|
|
# var lopers, winnaar;
|
|
|
|
# winnaar = arguments[0], lopers = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
|
|
|
|
# return print(winnaar, lopers);
|
|
|
|
#};
|
|
|
|
|
2014-10-28 02:23:52 +00:00
|
|
|
# Aanwezigheid:
|
2014-09-19 16:05:13 +00:00
|
|
|
alert "Ik wist het!" if elvis?
|
|
|
|
#=> if(typeof elvis !== "undefined" && elvis !== null) { alert("I knew it!"); }
|
|
|
|
|
2015-10-28 22:07:20 +00:00
|
|
|
# Lijstabstracties:
|
2014-10-28 02:23:52 +00:00
|
|
|
derdemachten = (wiskunde.derdemacht num for num in lijst)
|
2014-09-19 16:05:13 +00:00
|
|
|
#=>derdemachten = (function() {
|
|
|
|
# var _i, _len, _results;
|
|
|
|
# _results = [];
|
|
|
|
# for (_i = 0, _len = lijst.length; _i < _len; _i++) {
|
|
|
|
# num = list[_i];
|
|
|
|
# _results.push(wiskunde.derdemacht(num));
|
|
|
|
# }
|
|
|
|
# return _results;
|
|
|
|
# })();
|
|
|
|
|
|
|
|
etenswaren = ['broccoli', 'spinazie', 'chocolade']
|
|
|
|
eet eten for eten in etenswaren when eten isnt 'chocolade'
|
|
|
|
#=>etenswaren = ['broccoli', 'spinazie', 'chocolade'];
|
|
|
|
#
|
|
|
|
#for (_k = 0, _len2 = etenswaren.length; _k < _len2; _k++) {
|
|
|
|
# eten = etenswaren[_k];
|
|
|
|
# if (eten !== 'chocolade') {
|
|
|
|
# eet(eten);
|
|
|
|
# }
|
|
|
|
#}
|
|
|
|
```
|
|
|
|
|
|
|
|
## Handige links (in het Engels):
|
|
|
|
|
|
|
|
- [Smooth CoffeeScript](http://autotelicum.github.io/Smooth-CoffeeScript/)
|
|
|
|
- [CoffeeScript Ristretto](https://leanpub.com/coffeescript-ristretto/read)
|