[quote]
Avalaxy schreef op donderdag 26 februari 2015 @ 23:28:
• Je vaak een anonieme functie mee moet geven waarbij je zelf magisch parameters moet bedenken oid? Voorbeeldje:
JavaScript:
1
2
3
4
5
6
7
8
9
| $('#example').dataTable( {
"columnDefs": [ {
"targets": 0,
"data": "download_link",
"render": function ( data, type, full, meta ) {
return '<a href="'+data+'">Download</a>';
}
} ]
} ); |
Je geeft hier data, type, full, meta, etc. mee. Maar je kunt daar ook parameters weglaten. Wat je nou nodig hebt en wanneer je het weg kunt laten snap ik nooit. Waar die data dan vandaan komt, wat voor type het is en hoe het er uit ziet weet je ook niet.
Denk je dat Lambda's in C# anders zijn? Ook daar geef je geen type mee. In C++ is het vooralsnog wel verplicht, maar wordt het als vervelend ervaren omdat het nodeloos verbose is, en men bezig is met een
voorstel om
auto toe te staan. Voor iemand die veel in C++ programmeert deel ik je frustratie absoluut niet, en vind ik de lambda's van javascript een verademing

.
Overigens: "Wat je nou nodig hebt en wanneer je het weg kunt laten snap ik nooit." -> je kunt het altijd weglaten. Missende parameters worden undefined, teveel parameters geven verder geen error (en kun je accessen via
arguments)
[q]• Er geen methodes zijn om fatsoenlijk een datum te formatten... Wtf javascript?
• Er geen fatsoenlijke manier is om te testen of een karakter een valide letter (Unicode) is?
Dat zijn strict gezien natuurlijk geen taal-features maar library-features. Ik ben het wel met je eens, de browser API is nodeloos beperkt. Maar daar gaat een andere taal niet direct iets aan veranderen.
Zo kan ik nog wel even doorgaan. Javascript is gewoon echt een fucking vage taal, vele malen erger dan PHP.
Tja, totaal niet mee eens. De specificatie van JS is oneindig veel beter doordacht dan die van PHP.
[
Voor 17% gewijzigd door
.oisyn op 27-02-2015 00:26
]