4 ms·
Nice list. Perhabs just personal preference but I'd use for(let element of someList){ console.log(element); } instead of someList.forEach(e
by mschuetz 8y ago
Nice list.
Perhabs just personal preference but I'd use
for(let element of someList){
console.log(element);
}
instead of
someList.forEach(element => {
console.log(element)
})
for...of is easier to read and recognize as a loop construct at first glance, and as far as I recall it's also faster nowadays since the body of the loop is inline, whereas forEach requires the runtime to deal with a function object.
- tormeh 8y agoMakes me wonder if maybe the syntax for mapping, folding and other collection operations should have a similar syntax to for instead of the current method-style syntax popular in most modern languages.
- symlinkk 8y agoC# has a syntax called Linq Query Syntax that provides keywords in the language to do things like map, filter, and reduce. Example: var queryLondonCustomers = from cust in customers where cust.City == "London" select cust; I'm not a big fan of it honestly, the function style seems more consistent and easier to read to me.
- hnlauncher 8y agohttps://www.pyret.org/ https://www.pyret.org/ does it like this: for each(str from [list: "Ahoy", "world!"]): print(str) end for map(n from [list: 1,2,3]): n * n end # ==> [list: 1, 4, 9] for filter(n from [list: 1, 2, 3]): n >= 2 end # ==> [list: 2, 3] for fold(sum from 0, n from [list: 4, 5, 6]): sum + n end # ==> 15
- saghm 8y agoThat sounds a lot like Python list comprehensions
- tuesdayrain 8y agoPersonally I find the method-style syntax significantly more readable.
- jsh7 8y agoYou can also ‘return’ the outer function from within a ‘for...of’ which is pretty useful imo.
- andyfleming 8y agoAnd you can use await in the context of an outer async function, which is a huge advantage in reducing code complexity.