2018-04-11学习笔记

Linux的一些命令

curl : 利用URL规则在命令行下工作的文件传输工具,强大的http命令行工具,支持文件的上传和下载。基本语法   curl http://www.example.com   显示html的内容,(http://www.cnblogs.com/duhuo/p/5695256.html)

node事件循环机制 EventLoop

node的主线程会产生堆和栈,执行栈按顺序执行任务,任务清空后主线程会继续读取任务队列里的任务,依次执行任务回调函数。

Javascript是单线程,为异步任务提供了4个定时器,分别是:process.nextTick,  setTimeout, setInterval, setImmediate. 

process.nextTick 当执行栈任务清空后,在读取任务队列之前加入,发生在所有异步队列之前。

setImmediate 被添加在任务队列的尾部。

本轮事件循环:process.nextTick, Promise(微任务microTask)

下轮事件循环: setTimeout, setImmediate, setInterval

var p  = Object.create(null);

var p = {};

这2个变量的定义有什么不同?

Object.create(null) 不继承任何对象。没有任何属性,打印出来就是 No propertites

{} 继承自Object,Object.prototype.hasOwnProperty.call(p, 'toString') === true


HTTP TCP/IP 协议(https://hit-alibaba.github.io/interview/basic/network/HTTP.html)

HTTP请求内包含了哪些内容: 请求头,状态行,消息主体。

请求方式:GET,POST

持久链接: Connection: Keep-Alive HTTP 1.1  保持当前连接,避免了重新链接。

会话跟踪(URL重写,隐藏表单域,cookie,session)

CSRF攻击:伪造用户请求。防范攻击的方法: 关键操作用POST请求,验证码,Token,检测Referer.

XSS 攻击:主要是利用用户输入加入攻击类脚本。防御方法: 过滤用户输入,对输入内容进行escape变成普通文本。


ES6和CommonJS如何解决模块依赖加载。

CommonJS是运行时加载,ES6是编辑时输入接口。

CommonJS输出是值的拷贝,ES6输出的值的引用。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容