javascript忍者秘籍2-----------基础
作者:互联网
基础+函数+对象+集合+js单线程执行模型+js在服务器端运行-------------------------js的学习要点
基础
函数: 函数回调+闭包+作用域+生成器generator函数+promise,,,,,js是一门函数式语言,可怕
对象: 基于原型的面向对象(java是基于类的面向对象)
集合: 数组+map+set
基础
(一)首先,我们了解一下,js做什么?
js可以做android应用(我以前的面比较窄,我以为android应用只能用java做)
js还可以运行在浏览器端
js还可以做后台开发,运行在服务器端,
总结:js可以开发运行在网页上(l雷),桌面应用,移动应用上(雷),和服务器端的应用(me))
(二)js怎么工作的?
任何一门语言,无论运行在什么平台,其必有其解释器或者编译器,js作为一种解释性语言,其解释器叫引擎,这个引擎还是一种单线程模型,同一时刻只能执行一个代码段,那js在服务端怎么处理并发的?而且我们还知道,任何一种语言的新特性,其本质是对该语言的解释器或者编译器进行了更改,使其支持新特性,因此有的时候,即使我们的某个语言出了新特性,也会存在不支持的症状,这个时候是时候考虑更新一下你的解释器或者编译器了,,,,,,,,,,
(三)如何解决具有新特性的js不能被古老的浏览器执行?
使用转换编译器(转换器+编译器)
将js代码转换为旧版的js,使其能在古老的浏览器运行,,,,不过这个对于服务端开发人员影响不大,因为我们直接面对的服务器
(四)js应用那么广,我学啥?
使用node.js开发服务器端应用。。。。。。。。。。。。。。。。。。(之前我是搞java的,无奈呀,工作需要,不过我不会丢掉java滴,,,)
学习node,js的架构--核心就是js,,,,js的io+事件+计时器
(五)web应用的生命周期步骤?
因为要学习node.js做服务端开发,因此我们先回顾web应用的生命周期。。
小问题:
web应用一次能处理多少个事件?(1)
为什么浏览器使用事件队列来处理事件?
一个web应用一次 能处理多少request请求?请求池?
web应用生命周期:
参与者:用户+浏览器+服务器
用户输入url------------》浏览器生成请求并将请求发送至服务器-----------》服务器执行某些动作或者获取某些资源并将响应返回给客户端------------------》页面构建:浏览器处理html、css和js并构建结果页面----------》事件处理:浏览器监控事件队列,一次处理其中的一个事件--------------》关闭web页面
关键词:页面构建+事件处理(js的核心--单线程)
1)浏览器的动作-------页面构建过程:
解析html并构建dom--------》执行js代码
2)浏览器的动作-------事件处理过程:
js的引擎,也就是js的解释器,这个解释器嗯有点。。。相比于java,他只能同一时刻只能执行一个代码片段,单线程执行模型
标签:忍者,web,解释器,浏览器,秘籍,javascript,js,编译器,应用 来源: https://blog.csdn.net/strivenoend/article/details/86611325