{"id":95,"date":"2009-06-15T13:21:25","date_gmt":"2009-06-15T12:21:25","guid":{"rendered":"http:\/\/blogs.igalia.com\/eocanha\/?p=95"},"modified":"2015-11-08T00:21:01","modified_gmt":"2015-11-07T23:21:01","slug":"curiosities-about-parameters-and-variable-declarations-in-javascript","status":"publish","type":"post","link":"https:\/\/eocanha.org\/blog\/2009\/06\/15\/curiosities-about-parameters-and-variable-declarations-in-javascript\/","title":{"rendered":"Curiosities about parameters and variable declarations in Javascript"},"content":{"rendered":"<div class=\"syntax\">\n<div class=\"html4strict\" style=\"font-family: monospace\">\n<ol>\n<li class=\"li1\">\n<div class=\"de1\"><span class=\"sc2\"><span class=\"kw2\">&lt;html&gt;<\/span><\/span><\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\"><span class=\"sc2\"><span class=\"kw2\">&lt;body&gt;<\/span><\/span><\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">&nbsp;<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\"><span class=\"sc2\"><span class=\"kw2\">&lt;script<\/span> <span class=\"kw3\">type<\/span>=<span class=\"st0\">&quot;application\/javascript;version=1.7&quot;<\/span><span class=\"kw2\">&gt;<\/span><\/span><\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">&nbsp;<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\">function f1(parameter) {<\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">&nbsp;alert(parameter);<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\">}<\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">&nbsp;<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\">function f2(parameter) {<\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">&nbsp;alert(parameter);<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\">&nbsp;let parameter = &quot;value&quot;;<\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">}<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\">&nbsp;<\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">f1(&quot;hello&quot;);<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\">f2(&quot;hello&quot;);<\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">&nbsp;<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\"><span class=\"sc2\"><span class=\"kw2\">&lt;\/script&gt;<\/span><\/span><\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\">&nbsp;<\/div>\n<\/li>\n<li class=\"li2\">\n<div class=\"de2\"><span class=\"sc2\"><span class=\"kw2\">&lt;\/body&gt;<\/span><\/span><\/div>\n<\/li>\n<li class=\"li1\">\n<div class=\"de1\"><span class=\"sc2\"><span class=\"kw2\">&lt;\/html&gt;<\/span><\/span><\/div>\n<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<p>Continuing with the &#8220;Curiosities&#8221; serie, today I bring another one: Javascript doesn&#8217;t take too well the definition of a variable with the same name as a function parameter. If you do this, the parameter is lost.<\/p>\n<p>Copy <a href=\"http:\/\/pastebin.com\/f4708c14b\">the code<\/a> to a local file and try it yourself&#8230; Surprisingly, the second alert will print &#8220;undefined&#8221;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&lt;html&gt; &lt;body&gt; &nbsp; &lt;script type=&quot;application\/javascript;version=1.7&quot;&gt; &nbsp; function f1(parameter) { &nbsp;alert(parameter); } &nbsp; function f2(parameter) { &nbsp;alert(parameter); &nbsp;let parameter = &quot;value&quot;; } &nbsp; f1(&quot;hello&quot;); f2(&quot;hello&quot;); &nbsp; &lt;\/script&gt; &nbsp; &lt;\/body&gt; &lt;\/html&gt; Continuing with the &#8220;Curiosities&#8221; serie, today I bring another one: Javascript doesn&#8217;t take too well the definition of a variable with the same name as a &hellip; <a href=\"https:\/\/eocanha.org\/blog\/2009\/06\/15\/curiosities-about-parameters-and-variable-declarations-in-javascript\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Curiosities about parameters and variable declarations in Javascript<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[2],"tags":[],"_links":{"self":[{"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/posts\/95"}],"collection":[{"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/comments?post=95"}],"version-history":[{"count":1,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/posts\/95\/revisions"}],"predecessor-version":[{"id":414,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/posts\/95\/revisions\/414"}],"wp:attachment":[{"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/media?parent=95"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/categories?post=95"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/eocanha.org\/blog\/wp-json\/wp\/v2\/tags?post=95"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}