标签:结构 需要 直接 引用 .com 处理 href ++ 必须
很多人学习了最基础的JS的时候,就觉得自己没问题了,其实还有许多都是要不断的进阶提升自身能力的。今天要跟大家说说的是自学前端基础中不可忽略的内存空间。
对于前端开发来说,内存空间并不是一个经常被提及的概念,很容易被大家忽视。特别是很多不是计算机专业的小伙伴们在进入到前端之后,会对内存空间的认知比较模糊,甚至有些人干脆就是一无所知。其实呢,想要对JS的理解更加深刻,就必须对内存空间有一个清晰的认知。
一、 栈于堆
与C/C++不同,javascript中并没有严格意义上区分栈内存与堆内存。因此我们可以粗浅的理解为javascript的所有数据都保存在堆内存中。但是在某些场景,我们仍然需要基于堆栈数据结构的思路进行处理,比如javascript的执行上下文。执行上下文在逻辑上实现了堆栈。因此理解堆栈数据结构的原理与特点任然十分重要。
二、 变量对象与基础数据类型
javascript的执行上下文生成之后,会创建一个叫做变量对象的特殊对象,javascript的基础数据类型往往都会保存在变量对象中。
三、引用数据类型与堆内存
与其他语言不通,JS的引用数据类型,比如数组Array,它们值的大小是不固定的。引用数据类型的值是保存在堆内存中的对象。javascript不允许直接访问堆内存中的位置,因此我们不能直接操作对象的堆内存空间。在操作对象时,实际上是在操作对象的引用而不是实际的对象。
不要认为内存空间的概念在JS的学习中并不是那么重要。当回过头来重新整理JS基础时,你会发现由于对它们的模糊认知,导致了很多东西我理解得并不明白。往往基础都是要好好打牢的。
标签:结构 需要 直接 引用 .com 处理 href ++ 必须
原文地址:http://www.cnblogs.com/changshasxt/p/7744102.html