在javascript中,我发现了一些没有'var'
关键字的变量声明 - 例如
<script type="text/javascript">
userId
</script>
然后我认为javascript可能是一种动态类型的语言,如 - python
。
但在其他一些地方发现了一些带有关键字'var'
的变量声明,如 -
<script type="text/javascript">
var accountNumber
</script>
因为我是Javascript
的新人,所以对我来说有些困惑。这两个宣言之间的差异是什么?这两个声明变量的范围是否保持相同?
由于
答案 0 :(得分:2)
不带“var”关键字的变量声明在全局范围内创建变量。
如果您不小心,这可能会引入错误。我总是使用“var”关键字来声明变量。我看到的唯一例外是在另一个函数的词法范围内定义全局变量。
并且,您的第一个片段根本不是变量声明,它是一个表达式,会抛出错误,因为未定义userID。