Can someone explain what this does?
var foo = foo || alert(foo);
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
If
foois already defined and evaluates to true, it setsfoo = foo, i.e. it does nothing.If
foois defined but evaluates to false, it would popup whateverfoois (false,null,undefined, empty string, 0, NaN), but sincealertreturns nothing,foowill be set toundefined.If
foois not yet defined, an exception will be thrown. (Edit: In your example,foowill always be defined because of thevar foodeclaration.)