Example: Maybe the most beloved feature: anonymous functions
CS: (x) -> x + x
It's like "yeah, I want to get this block done here", and it obfuscates the workings of the language (e.g.: this is a function with all its inheritance and a shared scope, it returns a reference, which can be used as any reference and is interchangeable with a reference to a named function, etc – the construct essentially obfuscates that the expression is returning an object of type "Function").
I don't think that anyone would get away with it in a C-development position, who would be delivering a source for a precompiler using a construct like, say
loop(i <- 0 .. 9):
as a replacement for
for (i = 0; i < 10; i++) {}
IMHO, this is a very JS-specific phenomenon. And it's a bit strange, having something like a lingua franca nobody seems to care about.
(Edit: Sticking to the lingua franca issue: It's a bit like having Latin as a lingua franca in the middle ages and some community using "Habs papa" for "Habemus papam". Even if "habs" compiles to "habemus" and the forth case of "papa" is easily inferred by the context, it fails the whole issue of using a lingua franca.)