JS
文章平均质量分 63
EdisonLanglang
一个会摄影的程序员
展开
-
void 0 与 undefined的区别
undefined可以被重写undefined 在 ES5 中已经是全局对象的一个只读(read-only)属性了,它不能被重写。但是在局部作用域中,还是可以被重写的。(function() { var undefined = 10; // 10 -- chrome alert(undefined);})(); (function() { undefined = 10; // undefined -- chrome alert(undefined);})();.原创 2021-04-18 17:07:03 · 217 阅读 · 1 评论 -
基于Node.js平台的Express教程
这里写目录标题Express 简介什么是 ExpressExpress 能做什么Express 的基本使用安装 Express创建基本的 Web 服务器监听 GET 请求监听 POST 请求获取 URL 中携带的查询参数获取 URL 中的动态参数托管静态资源express.static()托管多个静态资源目录挂载路径前缀nodemonnodemon 的作用安装 nodemon使用 nodemonExpress 路由路由的概念Express 中的路由路由的匹配过程路由的使用简单用法模块化路由创建路由模块注册路原创 2021-04-04 00:21:44 · 1730 阅读 · 10 评论 -
JavaScript|总结对象创建模式
每个方式都有不同适用场景,需要根据场景去具体适用。方式一:Object构造函数模式用法:先创建空Object对象,再动态添加属性/方法适用场景:起始时不确定对象内部数据问题:语句太多var person = new Object()person.name = "make"方式二:对象字面量模式用法:使用{ },同时指定属性/方法适用场景:起始时对象内部数据确定问题:如果创建多个对象,有重复代码var person = { name:"jjj"}方式三:工厂模式用法:通过工厂原创 2021-02-09 12:15:04 · 80 阅读 · 0 评论 -
JavaScript|深入理解闭包
闭包是面试和开发中必定会用到的一个。定义有两个常见的理解方式,我个人倾向第一个理解方式,最好两个理解都掌握。理解一:闭包就是能够读取其他函数内部变量的函数。理解二:定义在一个函数内部的函数(多数人的理解)本质上,闭包是将函数内部和函数外部连接起来的桥梁。产生闭包的条件:函数嵌套、内部函数引用了外部函数的数据(变量/函数)。常见闭包将函数作为另一个函数的返回值 function f1(){ var n=999; nAdd=function(){n+=1} //f原创 2021-02-09 12:11:45 · 118 阅读 · 0 评论 -
JavaScript|事件循环模型
图解事件循环模型相关的重要概念执行栈:execution stack所有代码都在此空间执行。浏览器内核:browser coreJS引擎模块(在主线程处理)其他模块(在主/分线程处理)callback queue 回调队列包括:任务队列 task queue 、 消息队列 message queue、事件队列 event queue均在回调队列里面。事件轮询:event loop从任务队列中循环取出回调函数放入执行栈中处理(一个接一个)。...原创 2021-02-09 11:42:53 · 367 阅读 · 1 评论 -
JavaScript|深入了解JS原型链
原型prototype每个函数都有一个prototype属性,它默认指向一个object空对象(没有我们定义的属性),即称为原型对象。这里一般讨论构造函数。其中Objecty也是有原型对象的。当函数通过构造函数形式调用时,它所创建的对象都有一个隐含的属性:指向构造函数的原型对象,我们可以通过 __proto__ 来访问该属性。原型对象中还有一个contructor属性,它指向函数对象。构造函数、实例和原型对象在内存中的关系图1:图1对应的伪代码如下:function Myclass(){原创 2021-02-04 12:07:54 · 356 阅读 · 3 评论