HTML:var x = x || "Val mặc định" không nhận được thiết lập đúng nếu x được định nghĩa ở trên nó
<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"
});
Đối với một số lý do, x
được kết thúc như "default val"
và không phải "overriden"
, thậm chí tho tho ban đầu tôi sẽ đặt nó thành "overriden"
trước khi tôi thậm chí bao gồm tham chiếu tập lệnh vào myjs.js.
Bất kỳ ý tưởng nào về lý do tại sao điều này xảy ra? Tôi đang cố gắng để kích hoạt trang lưu trữ để thiết lập một ghi đè cho một biến được sử dụng trong một tập tin js bao gồm, nếu không sử dụng val mặc định.
Chỉ cần sử dụng 'var y = x || ... '. – kennytm
có thể xóa từ khóa 'var' của khai báo đầu tiên? –