蓉杠学习网

j***ascript回收机制,js的回收机制

大家好,今天小编关注到一个比较意思的话题,就是关于javascript回收机制问题,于是小编就整理了2个相关介绍javascript回收机制的解答,让我们一起看看吧。

  1. 如何才能通俗易懂的解释javascript里面的‘闭包’?
  2. HTML、CSS、JS很低级吗?

如何才能通俗易懂的解释j***ascript里面的闭包’?

我是一名前端,无意间看见这个问题,我来回答一下!

我曾经写过一篇博客用来介绍闭包,谈不上通俗易懂,但是可以理解的比较深入!我个人认为理解闭包的概念的前提是理解作用域以及js的垃圾回收机制!

javascript回收机制,js的回收机制div>
图片来源网络,侵删)

定义

作用域:变量函数的可访问范围

闭包:在某个作用域内定义的函数,它可以访问这个作用域内的所有变量!

javascript回收机制,js的回收机制
(图片来源网络,侵删)

从定义上看,我觉得闭包是函数作用域中一种现象,而且在es6之前,js只有函数级作用域,没有块级作用域,那么我们就来看看函数级作用域的特点

函数级作用域

简单通俗易懂的讲就是一个函数里面还有一个函数,然后这个内部函数里用到了外部函数的变量,这个内部函数就叫闭包。

javascript回收机制,js的回收机制
(图片来源网络,侵删)

概念通俗易懂,不过也得注意其用途。

它的最大用处有两个,一个是前面提到可以读取函数内部的变量,另一个就是让这些变量的值始终保持在内存中。

简单解释下这两句话,我们在外部是无法访问到函数内部的变量的,我们想要访问,则可以通过在内部创建一个函数,也就是闭包来访问这个函数,然后通过外部函数返回这个闭包,那我们在外部就可以通过这个闭包来访问这个函数的内部变量了。

接着上面的情况,如果这个闭包我们赋值在一个全局变量上,那么这个闭包就保存在内存中,由于闭包访问了它外部函数的变量,所以又依赖于它的外部函数,这个外部函数也就保存在内存中,不会再调用结束后被垃圾回收机制回收。

htmlcss、JS很低级吗?

这个东西看你如何理解了。

如果学了两天网页制作,就会做个学生作业级别的,有几个页面,来回跳转一下,用了网上扒的轮播图,HTML CSS JS都用上了,如果这种级别,当然低级。

但是如果你说你是前端工程师,开始用上了好多各种框架,做了各种特效优化,炫酷的还自己写,绝对没人说低级。随便列举一些新东西,用HTML5特性,ES6编程,Less编程,这些也是HTML CSS JS的一些版本

你去面试高级前端工程师,你说你会HTML做H5游戏模块化,前端游戏引擎开发,AR VR,vue,react,等等名词技术,只要想做性能好,或者兼容性好的,其实都是基于这三个东西起来的。


这个问题问的好,大部分人认为html、css、js多简单的东西,基本学一段时间就会了,也没啥技术含量啊,但是每个东西既然出来就有与众不同的地方。

你比如说同样是做一个页面,外观看起来一样的,但是刚入门的前端写起来不仅语义化差,而且对性能优化处理肯定做的很差。而对于有经验的老手来说,写完既保持了网页的访问速度,又可以兼顾页面的性能,还能注重用户体验度。你能说这很低级吗。

如果你觉得某一个技术很低级,那说明你对他研究的还不透彻,只有深入的去探究才能挖掘出某项技术潜在的价值,你的能力也会不停的进步。

我说一句一个人跟我说过的一句话。

真正的css可能比js都要难,怎么说呢,现在css可以单独写轮播图,很多3d,一个动物的行走,一辆正在行驶的车,渐变滤镜等等一些神奇的功能,全都没有用js而单独写出来的,如果你这些东西也能用纯css写出来,那我没什么可以说,但我相信能做到这类的人肯定不多,至少我认识的人里面没有。

js现在近几年很多网页游戏就是存js写出来的,我不明为什么有的人会说js很低级,js能做的东西太多太多啦,我不知道如果没有js很多的框架想在还能研发出来么,很多框架的底层语言难道不是js写的么?

到此,以上就是小编对于j***ascript回收机制的问题就介绍到这了,希望介绍关于j***ascript回收机制的2点解答对大家有用。

[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。 转载请注明出处:http://www.rongung.com/post/17295.html

分享:
扫描分享到社交APP