JS的作用域链,内存空间,闭包等等可以参考什么语言来理解?

JS的一些高级特性,比如作用域链内存空间闭包等等可以参考什么语言来理解?

因为我了解JS的原型继承在设计的时候有参考IO这门语言,IO是一门,个人觉得是比JS好理解好多的语言,因为它太简单了。我参考着IO来理解JS原型继承原型链对象方面的内容的话,发现理解的更好,更深刻。虽然JS的其他特性网上有很多的文章来解答,但是发现总是有点深奥,所以希望有人可以推荐下和它类似的语言,但是比较好理解的,然后我去参考着理解。

之前在简书上看到一个系列讲解js的文章,说的非常详细,但是发现他讲的内存空间等等内容我还是不能很好的理解,自己的水平有限,求推荐?


幕布斯6054654
浏览 610回答 2
2回答

萧十郎

内存不用太纠结,不同的引擎实现有可能不同,重点是关心常用的数据结构就好,JS 里最常用的无非也就是数组(功能兼容数组、列表、队列、栈)和对象(功能兼容字符串键的Hash表)。作用域链可以简单的理解,哪写的代码就在其所在的 function 函数体有效(var),而后来的 const 和 let 是块级作用域,即在最近的 {} 内有效,注意一下函数申请和变量申明提升的问题,关于这个可以参考 C# 或 Java,都差不多。只要函数是一等公民的语言(即函数可以当作引用来传递),基本上都存在闭包。闭包同样遵循上面的原则,写代码的时候,它是在哪个作用域内,运行的时候它就可以访问哪个作用域内的变量。只是在 this 这个问题上要麻烦一点,可以参考:JavaScript 的 this 批向问题深度解析
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript