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输出的值的引用。
网友评论