Yes, this is a lambda (for example, similar to ECMAScript6 and Ruby, as well as some other languages.)
Array.prototype.forEach takes three arguments, element, index, array , so s is just the parameter name used for element .
It will be like writing this file to regular ECMAScript5:
stringsArray.forEach(function(s) { for (var name in validators) { console.log('"' + s + '" ' + (validators[name].isAcceptable(s) ? ' matches ' : ' doesnt match ') + name); } });
In the above example, you did not specify all the code, so I assume that validators is just a simple {} object.
The syntax for the example you provided is actually identical to the ES6 syntax.
See this example from the TypeScript reference :

Josh beam
source share