- 在经过一些AST处理后的混淆代码,会有一些变量或者函数显得多余,因为还原后,没有其他的代码来使用它们。作为一个有代码洁癖的人,怎么能容忍这样的垃圾代码横行霸道,显得格外刺眼。因此,除之而后快。 删! 删! 删! 统统删掉。作为一个会编程的人,手动一个个删,似乎有点掉价。 那不如来写个插件,一劳永逸。 插件功能 删除代码中没有被用到的变量,或者... 在经过一些AST处理后的混淆代码,会有一些变量或者函数显得多余,因为还原后,没有其他的代码来使用它们。作为一个有代码洁癖的人,怎么能容忍这样的垃圾代码横行霸道,显得格外刺眼。因此,除之而后快。 删! 删! 删! 统统删掉。作为一个会编程的人,手动一个个删,似乎有点掉价。 那不如来写个插件,一劳永逸。 插件功能 删除代码中没有被用到的变量,或者...
- 最近遇到了一个问题,就是 Vue.js 中的 prop 如何实现双向绑定比较好。 之前我都是把 prop 传递到子组件,然后子组件里面直接把 prop 直接改了,这样虽然能把结果反映到父组件,但并不是一个很好的解决方案。 比如我就经常遇到这样的 Warning: Avoid mutating a prop directly since the value wi... 最近遇到了一个问题,就是 Vue.js 中的 prop 如何实现双向绑定比较好。 之前我都是把 prop 传递到子组件,然后子组件里面直接把 prop 直接改了,这样虽然能把结果反映到父组件,但并不是一个很好的解决方案。 比如我就经常遇到这样的 Warning: Avoid mutating a prop directly since the value wi...
- 目录 1 什么是桥接模式 2 参与者 3 实例讲解 4 总结 1 什么是桥接模式 Bridge模式允许两个组件,即客户端和服务一起工作,每个组件都有自己的接口。Bridge是一种高级架构模式,它的主要目标是通过两级抽象来编写更好的代码。它有利于对象之间非常松散的耦合,有时也被称为双适配器模式。 桥接模式的作用在于将实现部分和抽象部分分离, 以便两者可以独立的变化... 目录 1 什么是桥接模式 2 参与者 3 实例讲解 4 总结 1 什么是桥接模式 Bridge模式允许两个组件,即客户端和服务一起工作,每个组件都有自己的接口。Bridge是一种高级架构模式,它的主要目标是通过两级抽象来编写更好的代码。它有利于对象之间非常松散的耦合,有时也被称为双适配器模式。 桥接模式的作用在于将实现部分和抽象部分分离, 以便两者可以独立的变化...
- 前言 本篇博文来自一次公司内部的前端分享,从多个方面讨论了在设计接口时遵循的原则,总共包含了七个大块。系卤煮自己总结的一些经验和教训。本篇博文同时也参考了其他一些文章,相关地址会在后面贴出来。很难做到详尽充实,如果有好的建议或者不对的地方,还望不吝赐教斧正。 一、接口的流畅性 好的接口是流畅易懂的,他主要体现如下几个方面: 1. 简单 操作某个元素的 css 属... 前言 本篇博文来自一次公司内部的前端分享,从多个方面讨论了在设计接口时遵循的原则,总共包含了七个大块。系卤煮自己总结的一些经验和教训。本篇博文同时也参考了其他一些文章,相关地址会在后面贴出来。很难做到详尽充实,如果有好的建议或者不对的地方,还望不吝赐教斧正。 一、接口的流畅性 好的接口是流畅易懂的,他主要体现如下几个方面: 1. 简单 操作某个元素的 css 属...
- 目录 1.什么是全局变量和局部变量 2.全局变量和局部变量的声明 2.1 全局变量的声明 2.2 局部变量的声明 3.全局变量和局部变量一些常见问题 3.1全局变量跟局部变量重名 3.2 零散变量的问题 3.3. 变量释放问题 总结: 1.什么是全局变量和局部变量 全局变量:常常... 目录 1.什么是全局变量和局部变量 2.全局变量和局部变量的声明 2.1 全局变量的声明 2.2 局部变量的声明 3.全局变量和局部变量一些常见问题 3.1全局变量跟局部变量重名 3.2 零散变量的问题 3.3. 变量释放问题 总结: 1.什么是全局变量和局部变量 全局变量:常常...
- 目录 1 什么是装饰器模式? 2 装饰器模式的主要参与者有哪些 3 代码实现 4 实例应用 5 ES7 中的 decorator 6 总结 1 什么是装饰器模式? 装饰器模式模式动态地扩展了(装饰)一个对象的行为,同时又不改变其结构。在运行时添加新的行为的能力是由一个装饰器对象来完成的,它 "包裹 "了原始对象,用来提供额外的功能。多个装饰器可以添加或覆盖原... 目录 1 什么是装饰器模式? 2 装饰器模式的主要参与者有哪些 3 代码实现 4 实例应用 5 ES7 中的 decorator 6 总结 1 什么是装饰器模式? 装饰器模式模式动态地扩展了(装饰)一个对象的行为,同时又不改变其结构。在运行时添加新的行为的能力是由一个装饰器对象来完成的,它 "包裹 "了原始对象,用来提供额外的功能。多个装饰器可以添加或覆盖原...
- 目录 1 函数的定义方式 1.1 函数声明 1.2 函数表达式 1.3 函数声明与函数表达式的区别 1.4 构造函数Function(了解即可,一般不用) 2 函数的调用方式 3 函数内 this 的指向 4 call、apply、bind 4.1 call,apply 4.1.1 新的函数调用方式apply和call方法 4.1.2 apply和cal... 目录 1 函数的定义方式 1.1 函数声明 1.2 函数表达式 1.3 函数声明与函数表达式的区别 1.4 构造函数Function(了解即可,一般不用) 2 函数的调用方式 3 函数内 this 的指向 4 call、apply、bind 4.1 call,apply 4.1.1 新的函数调用方式apply和call方法 4.1.2 apply和cal...
- 目录 1 什么是单例模式? 2 单例模式的作用和注意事项 3 代码实现 4 案例应用 4.1 使用单例模式管理命名空间 4.2 使用单例模式为不同命名空间的button按钮添加click事件,并且使他们之间能够互相通信 1 什么是单例模式? 单例就是保证一个类只有一个实例,实现的方法一般是先判断实例存在与否,如果 ... 目录 1 什么是单例模式? 2 单例模式的作用和注意事项 3 代码实现 4 案例应用 4.1 使用单例模式管理命名空间 4.2 使用单例模式为不同命名空间的button按钮添加click事件,并且使他们之间能够互相通信 1 什么是单例模式? 单例就是保证一个类只有一个实例,实现的方法一般是先判断实例存在与否,如果 ...
- 目录 1什么是Node 2Node.js安装 2.1官网下载 2.2安装 3Node.js快速入门 3.1Node.js组成 3.2Node.js基础语法 3.3Node.js中的全局对象global 4Node.js模块化开发 4.1JavaScript开发弊端 4.2 软件中的模块化开发 4.3 Node.js中模块化开发规范 4.4模块成员导出... 目录 1什么是Node 2Node.js安装 2.1官网下载 2.2安装 3Node.js快速入门 3.1Node.js组成 3.2Node.js基础语法 3.3Node.js中的全局对象global 4Node.js模块化开发 4.1JavaScript开发弊端 4.2 软件中的模块化开发 4.3 Node.js中模块化开发规范 4.4模块成员导出...
- 目录 1 学习目标 2 面向对象介绍 2.1 什么是对象 2.2 什么是面向对象 2.3 JavaScript 中面向对象的基本体现 3 JavaScript 如何创建对象 3.1 字面量方式 3.2 简单方式的改进:工厂函数 3.3 更优雅的工厂函数:构造函数 3.4 构造函数代码执行过程 3.5 构造函数和实例对象的关系 3.6... 目录 1 学习目标 2 面向对象介绍 2.1 什么是对象 2.2 什么是面向对象 2.3 JavaScript 中面向对象的基本体现 3 JavaScript 如何创建对象 3.1 字面量方式 3.2 简单方式的改进:工厂函数 3.3 更优雅的工厂函数:构造函数 3.4 构造函数代码执行过程 3.5 构造函数和实例对象的关系 3.6...
- 目录 一、递归 1.1 概念 1.2 出口 1.3 递归经典问题:递归求斐波那契数列 1.4 递归经典问题:递归求阶乘 1.5 递归求一个数字各个位数上的数字的和 1.6 递归遍历DOM树 二 深浅拷贝 2.1 浅拷贝 2.2 深拷贝 2.3 如何区分深拷贝与浅拷贝? 2.3.1 浅拷贝:仅复制了引用,彼此之间的操作会互相影响 2.3.2 深拷贝:在... 目录 一、递归 1.1 概念 1.2 出口 1.3 递归经典问题:递归求斐波那契数列 1.4 递归经典问题:递归求阶乘 1.5 递归求一个数字各个位数上的数字的和 1.6 递归遍历DOM树 二 深浅拷贝 2.1 浅拷贝 2.2 深拷贝 2.3 如何区分深拷贝与浅拷贝? 2.3.1 浅拷贝:仅复制了引用,彼此之间的操作会互相影响 2.3.2 深拷贝:在...
- B站视频:https://www.bilibili.com/video/BV1Kp4y167iX 十分钟实现炫酷透明计算器,CSS3+JavaScript实现3D炫酷计算器 今天带大家实现了一个炫酷的透明计算器,实现的过程中需要用到vanillatiltjs,一个平滑的3D倾斜javascript库,具体的使用和下载地址如下:https://micku7zu.g... B站视频:https://www.bilibili.com/video/BV1Kp4y167iX 十分钟实现炫酷透明计算器,CSS3+JavaScript实现3D炫酷计算器 今天带大家实现了一个炫酷的透明计算器,实现的过程中需要用到vanillatiltjs,一个平滑的3D倾斜javascript库,具体的使用和下载地址如下:https://micku7zu.g...
- 目录 1 什么是外观模式 2 外观模式的主要的参与者 3 代码实现 4 实例应用 4.1 跨浏览器事件 4.2 阻止默认和冒泡事件 5 总结 1 什么是外观模式 外观模式为子系统提供了一个接口,它屏蔽一个或多个子系统的复杂功,提供了一个一致的界面(接口)给用户。外观模式是一个非常简单的模式,但它的功能却很很强大,非常有用。外观模式不仅简化类中的接口,而且对... 目录 1 什么是外观模式 2 外观模式的主要的参与者 3 代码实现 4 实例应用 4.1 跨浏览器事件 4.2 阻止默认和冒泡事件 5 总结 1 什么是外观模式 外观模式为子系统提供了一个接口,它屏蔽一个或多个子系统的复杂功,提供了一个一致的界面(接口)给用户。外观模式是一个非常简单的模式,但它的功能却很很强大,非常有用。外观模式不仅简化类中的接口,而且对...
- 目录 1 什么是工厂方法模式? 2 工厂方法模式作用 3 工厂方法模式参与者 4 代码实现 1 什么是工厂方法模式? 在基于类的编程中,工厂方法模式是一种创建模式,该模式使用工厂方法来处理创建对象的问题,而不必指定将要创建的对象的确切类。这是通过调用工厂方法来创建对象的,而不是通过调用构造函数,该工厂方法在接口中指定并由子类实现,或者在基类中实现,并且可以选择由... 目录 1 什么是工厂方法模式? 2 工厂方法模式作用 3 工厂方法模式参与者 4 代码实现 1 什么是工厂方法模式? 在基于类的编程中,工厂方法模式是一种创建模式,该模式使用工厂方法来处理创建对象的问题,而不必指定将要创建的对象的确切类。这是通过调用工厂方法来创建对象的,而不是通过调用构造函数,该工厂方法在接口中指定并由子类实现,或者在基类中实现,并且可以选择由...
- 目录 1 什么是适配器模式? 2 参与者 3 实例讲解 4 其它应用 5 总结 1 什么是适配器模式? 适配器模式是将一个接口(对象的属性和方法)转换为另一个接口。适配器允许编程组件协同工作,否则由于接口不匹配而无法协同工作。适配器模式也称为包装器模式。 适配器模式可以想象为我们日常生活中经常使用的接口转换器,实现两个或者多个不同的数据存储器进行数据交换,... 目录 1 什么是适配器模式? 2 参与者 3 实例讲解 4 其它应用 5 总结 1 什么是适配器模式? 适配器模式是将一个接口(对象的属性和方法)转换为另一个接口。适配器允许编程组件协同工作,否则由于接口不匹配而无法协同工作。适配器模式也称为包装器模式。 适配器模式可以想象为我们日常生活中经常使用的接口转换器,实现两个或者多个不同的数据存储器进行数据交换,...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签