我想知道Haskell使用的是动态作用域还是静态作用域。我意识到,例如,如果你定义:
let x = 10
然后定义函数
let square x = x*x
你有两个不同的“x”,这是否意味着它是动态作用域的?如果不是,它使用什么作用域,为什么?
另外,Haskell变量是否可以有别名(相同内存位置/值的不同名称)?
谢谢。
根据节点,顶级作用域不是全局作用域,并且在Node.js模块内部定义的变量将是该模块的局部变量。
但是,我注意到在全局作用域中创建的var something被列为global的属性,这对我来说似乎是一种跨模块对象。下面是我在GitBash中运行的代码:
$ node
var something = "this is a test"
undefined
something
'this is a test'
console.log(global)
我真的不明白这与文档中关于顶级作用域的陈述有什么一致之处。
如果global真的是一个跨模块的对象,就像Ebohlma
我有以下有效的代码-
$(function(){
$('#testbutton').click(function(){
var checkedValue = $('[name="someRadioGroup"]:radio:checked').val();
$('#result').html('The radio element with value <tt>' + checkedValue + '</tt> is checked');