JS博客文章

同源策略

看同源策略部分就好,怎么避免不用管

http://www.ruanyifeng.com/blog/2016/04/same-origin-policy.html

 

 

Babel,将ES6转换成ES5,因为有的老浏览器不支持ES6

虽然出现了各种转换工具,但是到目前为止,还没有一款工具能百分百将ES6的新特性完美地转换成ES5,

因为在ES6新增的内容中,存在一些无法在ES5中找到与之匹配的语法,所以不建议在生产环境中使用支持度较低的新特性

 

简单描述

https://blog.csdn.net/qq_36380426/article/details/71082158

阮一峰

http://www.ruanyifeng.com/blog/2016/01/babel.html

 

 

MVC模式

view,就是展示层。

数据以及对数据的操作,业务逻辑,放在model。

controller,是放流程逻辑,调用model提供的service而已。

 

JS单线程

原因

1、作为浏览器脚本,和用户互动,只需要单线程足够了

2、多线程并发的问题,比如并发操作DOM,应该怎么办?

 

所以JS,天生单线程

 

 

同步任务-->在主线程执行---->遇到耗时的事件,就是有回调函数的东西,就把它扔到异步的线程中处理---->主线程继续执行同步事件

异步线程执行完了,就按顺序把他们的回调函数丢到任务队列。

主线程执行完所有同步语句,才会依次从异步的任务队列取回调函数执行。

 

Ajax、setTimeout、DOM事件都是异步事件。

 

所以,代码顺序,是个很值得推敲的的东西

 

 

如果Java的话,肯定是定义好完成和出错的函数之后,才发送的。

但是JS里面,就算你先send了,但是这个事件都是在执行完同步事件之后才会执行的,所以会继续执行onload和onerror的定义,再执行回调,所以没有影响。

 

定时器的问题

而且定时器的效果是,过了n毫秒之后,才把回调函数丢到任务队列中去。

 

0毫秒,并不是意味着立刻执行

 

 默认时间

 

posted @ 2018-09-22 20:56  朋友圈  阅读(115)  评论(0编辑  收藏  举报