#Asc

Javascript介绍

JavaScript一种脚本语言,是一种动态类型、弱类型JavaScript通常用来操作HTML页面的html骨架,css是样式,js是行为js代码写在哪里JavaScript代码可以写在页面的script标签里面,或者单独的js文件里面,或者标签属性里面(不推荐)写在外部.js后缀文件里面,通过script标签引入,...
代码星球 代码星球·2020-04-10

15分钟带你了解前端工程师必知的javascript设计模式(附详细思维导图和源码)

设计模式是一个程序员进阶高级的必备技巧,也是评判一个工程师工作经验和能力的试金石.设计模式是程序员多年工作经验的凝练和总结,能更大限度的优化代码以及对已有代码的合理重构.作为一名合格的前端工程师,学习设计模式是对自己工作经验的另一种方式的总结和反思,也是开发高质量,高可维护性,可扩展性代码的重要手段.我们所熟知的金典的...

十分钟理解JavaScript引擎的执行机制

关注专栏写文章方伟景千锋前端开发推动市场提升的学习研究者。4人赞同了该文章首先,请牢记2点: JS是单线程语言JS的EventLoop是JS的执行机制。深入了解JS的执行,就等于深入了解JS里的eventloop 1.灵魂三问:JS为什么是单线程的?为什么需要异步?单线程又是如何实现异步的呢?技术的...

JavaScript 引擎基础:Shapes 和 Inline Caches

hijiangtao​中国科学院大学计算机应用技术硕士260人赞同了该文章前言:本文也可以被称做“JavaScriptEngines:TheGoodParts™”,其来自Mathias和Benedikt在JSConfEU2018上为本文主题演讲所起的题目,更多JSconfEU2018...

AST抽象语法树——最基础的javascript重点知识,99%的人根本不了解

javascriptvue-clicommonjswebpackast 阅读约27分钟抽象语法树(AST),是一个非常基础而重要的知识点,但国内的文档却几乎一片空白。本文将带大家从底层了解AST,并且通过发布一个小型前端工具,来带大家了解AST的强大功能Javascript就像一台精妙运作的机器,我们可以用它...

JavaScript arguments对象

 1、在JavaScript中,arguments对象是比较特别的一个对象,实际上是当前函数的一个内置属性。arguments非常类似Array,但实际上又不是一个Array实例。可以通过如下代码得以证实(当然,实际上,在函数funcArg中,调用arguments是不必要写成funcArg.argument...
代码星球 代码星球·2020-04-10

在 JavaScript 中为什么 typeof null 的结果是 object?

 java中的 null:既是对象,又不是对象,史称「薛定谔的对象」。 typeofnull==='object'; 、、//truenullinstanceofObject   //falsenullinstanceofObject===false而nullinsta...

JavaScript设计模式样例二十 —— 中介者模式

中介者模式(MediatorPattern)定义:用来降低多个对象和类之间的通信复杂性。目的:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。场景:MVC框架中的控制器C就是模型M和识图V的中介者。letmediator=(()=>{l...

JavaScript设计模式样例十九 —— 职责链模式

职责链模式(ChainofResponsibilityPattern)定义:为请求创建了一个接收者对象的链。目的:避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。场景:红楼梦中的"击鼓传花"。//采购请求letPurchaseReque...

JavaScript设计模式样例十八 —— 命令模式

命令模式(CommandPattern)定义:请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。目的:将一个请求封装成一个对象,从而使您可以用不同的请求对客户进行参数化。场景:在一个快餐店,用户向服务员点餐。服务员将用户的需求记录在清单上。l...

JavaScript设计模式样例十七 —— 迭代器模式

迭代器模式(ItratorPattern)定义:用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。目的:提供一种方法顺序访问一个聚合对象中各个元素,而又无须暴露该对象的内部表示。场景:$.each()for..of。leteach=(arr,callBack)=>{for(leti=0;i<arr....

JavaScript设计模式样例十六 —— 备忘录模式

备忘录模式(MementoPattern)定义:保存一个对象的某个状态,以便在适当的时候恢复对象。目的:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。场景:数据缓存。letgetPageData=(()=>{letcache={}return(page,fn)=>{if(cac...

JavaScript设计模式样例十五 —— 状态模式

状态模式(StatePattern)定义:创建表示各种状态的对象和一个行为随着状态对象改变而改变的context对象。目的:允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类。场景:游戏角色有跳跃、移动、射击、蹲下等状态设定,如果用if-else或者switch来进行判断,在遇到组合动作的时候,判断会...

JavaScript设计模式样例十四 —— 观察者模式

观察者模式(ObserverPattern)定义:当一个对象被修改时,则会自动通知它的依赖对象。目的:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。场景:一个对象(目标对象)的状态发生改变,所有的依赖对象(观察者对象)都将得到通知,进行广播通知。classSub...

JavaScript设计模式样例十三 —— 模版方法模式

模板方法模式(TemplateMethodPattern)定义:一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。目的:一些方法通用,却在每一个子类都重新写了这一方法。场景:在造房子的时候,地基、走线、水管都一样,只有在建筑的后期才有加壁橱加栅栏等差异。//...
首页上一页...8990919293...下一页尾页