|
horneyvirus (September 16, 2008 at 3:51 am)
Here's a web based REPL. squarefree(dot)com/shell/shell.html
Javascript returns the last expression or the one you explicitly returned. Also, you can use print("foo") and obviously alert().
horneyvirus (September 16, 2008 at 3:43 am)
You'll need to do that for many reasons.. such emulating block scope, as arguments for higher-order functions etc. You'd know this if you know any functional programming.
It's not about "I'm better than you". In fact free software sucks a lot harder sometimes.
JamesMorlan (September 16, 2008 at 3:21 am)
Yes, it is an assignment, but it still executes the function. I guess the syntax in question is for calling an anonymous function when you don't care about the result - or that has no result (technically it's not a function in that case, but that's the syntax we're stuck with). I've simply never needed to do that. And FYI, I don't play the "I'm better than you" Linux vs. Windows game; all software sucks, so give me a break. :D
horneyvirus (September 15, 2008 at 9:10 pm)
x=function() {...}(); is an assignment. You're not executing the function standalone. Playing around with a REPL helps to learn core JavaScript. "aptitude install spidermonkey" if you're or debian based systems. Then, "js" will invoke a REPL. If you're on KDE, you already have "kjs". If you're on winblows, I'm not talking to you again. :-D
horneyvirus (September 15, 2008 at 9:04 pm)
If you need to execute a an anonymous function standalone, you have to wrap it in parens. That's part of the syntax. Why? Ask Brendan Eich. :-D
JamesMorlan (September 15, 2008 at 7:05 pm)
I understand Lambda, but as far as the syntax, I have been calling anonymous functions without wrapping them in parens forever without it being a problem. e.g. x=function() {...}(); Never a browser has ever complained to me about that. I just thought maybe there was some other reason for wrapping it in parens.
horneyvirus (September 14, 2008 at 11:53 pm)
Because it's a syntax error otherwise. Most likely because the interpreter expects unwrapped functions to be statements and not expressions.
BTW, this is called Lambda in functional programming. Read "The Little Schemer" and "Javascript the good parts".
pentium3000 (August 21, 2008 at 4:48 pm)
jajajajaajajajaaj
Doulea82 (August 17, 2008 at 6:43 pm)
hello all,
If i can just have a moment,Wrath of the Gods is a new MMO about to start up,we are looking for more programers with java script exp and need to live in the UK,if you want more information please leave me a comment and ill get back to you,Thank you for all your time
JamesMorlan (August 14, 2008 at 8:41 am)
Why do you wrap anonymous functions in parens before invoking them? e.g. (function(){/*do something*/})() |