编程语言
首页 > 编程语言> > javascript忍者秘籍2-----------基础

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