HTML:var x = x || "Val por defecto" no conseguir crear correctamente si x se define por encima de ella
<script type="text/javascript">
var x = "overriden";
</script>
<script src="myjs.js"></script>
myjs.js:
$(document).ready(function(){
var x = x || "default val";
alert(x); // this alerts "default val" and not "overriden"
});
Por alguna razón, x
está terminando como "default val"
y no "overriden"
, aunque inicialmente estoy estableciéndolo en "overriden"
antes de incluir la referencia del script en myjs.js.
¿Alguna idea de por qué esto está sucediendo? Estoy intentando habilitar la página de hosting para establecer una anulación para una variable que se usa en un archivo js incluido; de lo contrario, use el valor predeterminado.
Simplemente use 'var y = x || ... '. – kennytm
quitando la palabra clave 'var' de la primera declaración? –