5 IT 哈

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 1w+

深入浅出Object.defineProperty()

讲解大致会根据下图展开本文部分参考了书籍《你不知道的javascript》上卷对象的定义与赋值经常使用的定义与赋值方法obj.prop =value或者obj['prop']=valueObject.defineProperty()语法说明Object.defineProperty()的作用就是直接在一个对象上定义一个新属性,或者修改一个已经存在的属性Object.defineProperty(obj, prop, desc)obj 需要定义属性的当前..

2020-08-03 17:43:13

关于Vue.use()详解

问题相信很多人在用Vue使用别人的组件时,会用到 Vue.use() 。例如:Vue.use(VueRouter)、Vue.use(MintUI)。但是用 axios时,就不需要用 Vue.use(axios),就能直接使用。那这是为什么呐?答案因为 axios 没有 install。什么意思呢?接下来我们自定义一个需要 Vue.use() 的组件,也就是有 install 的组件,看完之后就明白了。定义组件生成模版 vue init webpack-simple custom-gl

2020-08-03 14:16:18

Vue中 几个常用的命名规范

转自https://www.cnblogs.com/wjyz/p/10874831.html

2020-08-03 09:41:59

Node.js 游戏服务器开发

项目名称:四川麻将统一简称:scmj参考资料:https://v.qq.com/x/page/o0522mo58vj.html基本概念代开房间带开房间表示代理创建一个新的房间,让其它玩家加入。为什么要代开房呢?首先可以帮助没有房卡的朋友开房来提升尚未买卡的玩家积极性,其次代理开房可以更高的对玩家进行管理以防止玩家自己创房。代开流程客户端新增代开选项,代理创房的消息内附带代开标识。 大厅服中区分不同类型的房间并分别处理 房间服添加对代开的数据读写 客户端获取代开房列表 房间服获取

2020-07-30 15:52:34

JavaScript中的call、apply、bind深入理解

一、函数的三种角色首先要先了解在函数本身会有一些自己的属性,比如:length:形参的个数; name:函数名; prototype:类的原型,在原型上定义的方法都是当前这个类的实例的公有方法; __proto__:把函数当做一个普通对象,指向Function这个类的原型函数在整个JavaScript中是最复杂也是最重要的知识,对于一个函数来说,会存在多种角色:function Fn() { var num = 500; this.x = 100;}Fn.pr.

2020-07-29 17:48:21

面试高频(一:call, apply, bind实现)

(一)call源码解析首先上一个call使用function add(c, d) { return this.a + this.b + c + d;}const obj = { a: 1, b: 2 };console.error(add.call(obj, 3, 4)); // 10大统上的说法就是,call改变了this的指向。然后,介绍this xxx什么一大堆名词,反正不管你懂不懂,成功绕晕你就已经ok了,但是实际发生的过程,可以看成下面的样子。const o.

2020-07-29 17:41:46

手把手教你实现TypeScript下的IoC容器

在此篇文章开始之前,先向大家简单介绍 IoC。什么是 IoC?以及为什么我们需要 IoC?以及本文核心,在 TypeScript 中实现一个简单的 IoC 容器?目录[隐藏]IoC 定义 初识 Container 原理揭秘 @inject Container 小结IoC 定义我们看维基百科定义:控制反转(Inversion of Control,缩写为 IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(Depen.

2020-07-25 21:10:12

小邵教你玩转promise源码

前言:大家好,我叫邵威儒,大家都喜欢喊我小邵,学的金融专业却凭借兴趣爱好入了程序猿的坑,从大学买的第一本vb和自学vb,我就与编程结下不解之缘,随后自学易语言写游戏辅助、交易软件,至今进入了前端领域,看到不少朋友都写文章分享,自己也弄一个玩玩,以下文章纯属个人理解,便于记录学习,肯定有理解错误或理解不到位的地方,意在站在前辈的肩膀,分享个人对技术的通俗理解,共同成长!后续我会陆陆续续更新javascript方面,尽量把javascript这个学习路径体系都写一下包括前端所常用的es6、angular

2020-07-24 18:03:12

前端常见跨域解决方案(全)

什么是跨域?跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。广义的跨域:1.) 资源跳转: A链接、重定向、表单提交2.) 资源嵌入: <link>、<script>、<img>、<frame>等dom标签,还有样式中background:url()、@font-face()等文件外链3.) 脚本请求: js发起的ajax请求、dom和js对象的跨域操作等其实我们通常所说的跨域是狭义的,是由浏览器同源策略限制的一

2020-07-23 17:35:27

JavaScript ES6函数式编程(一):闭包与高阶函数

目录函数式编程的历史 什么是函数式编程 函数式编程的特点 闭包 变量作用域 变量生命周期 闭包的创建 高阶函数 函数作为参数传入 函数作为返回值输出 总结回到顶部函数式编程的历史函数的第一原则是要小,第二原则则是要更小 —— ROBERT C. MARTIN解释一下上面那句话,就是我们常说的一个函数只做一件事,比如:将字符串首字母和尾字母都改成大写,我们此时应该编写两个函数。为什么呢?为了更好的复用,这样做保证了函数更加的颗粒化。早在 1950 .

2020-07-22 17:58:58

JavaScript ES6函数式编程(二):柯里化、偏应用、组合、管道

目录柯里化(curry) 偏应用(partial) 组合(compose) 管道/序列(pipe) 总结上一篇介绍了闭包和高阶函数,这是函数式编程的基础核心。这一篇来看看高阶函数的实战场景。首先强调两点:注意闭包的生成位置,清楚作用域链,知道闭包生成后缓存了哪些变量 高阶函数思想:以变量作用域作为根基,以闭包为工具来实现各种功能回到顶部柯里化(curry)定义:柯里化是把一个多参数函数转换为一个嵌套的一元函数的过程。先看个简单的例子,这是一个名为 add 的函数:.

2020-07-22 17:57:37

这一次,彻底理解Promise源码思想

目录实现一个简单的Promise函子 同时调用同一个Promise函子 增加reject回调函数 增加Promise状态 Maybe函子优化 总结关于Promise的源码实现,网上有太多答案,我也看过很多资料,但都不是很明白。直到有一天我学完函数式编程之函子的概念,才对Promise源码有了更深刻的认识。今天,就让我们来重新认识一下Promise。我们知道,Promise的诞生是为了解决“回调地狱”的问题,它用同步链式的方式去解决异步的嵌套回调。啥?同步链式?这不就是我们上一节.

2020-07-22 16:46:11

200行代码理解 RxJS 的核心概念

RxJS 非常强大,各种操作符连接在一起便能让数据流动到需要用到它的地方,有人甚至觉得 RxJS 是魔法;然而,太阳底下无新事,本教程将一步步揭开 RxJS 的神秘面纱;这篇文章会通过 10 个有趣的小 demo 渐进式的实现 RxJS 的核心功能,其中包括:类:Observable的实现 类的方法:subscribe,pipe的实现 创建类操作符:of,from,fromEvent,interval,timer的实现 过滤类操作符:filter,take的实现 工具类操作符:t...

2020-07-21 17:24:22

前端 IoC 理念入门

背景近几年,前端应用(WebApp)正朝着大规模方向发展,在这个过程中我们会对项目拆解成多个模块/组件来组合使用,以此提高我们代码的复用性,最终提高研发效率。在编写一个复杂组件的时候,总会依赖其他组件来协同完成某个逻辑功能。组件越复杂,依赖越多,可复用性就越差,我们可以借助软件工程中优秀的编程理念来提高复杂组件的可复用性,以下将详述其中之一的依赖倒置理念。什么是 IoCIoC 全称 Inversion of Control,中文术语为依赖倒置(反转),包含两个准则: 高层次的模块不应该

2020-07-21 16:56:43

25个JavaScript数组方法代码示例

摘要通过代码掌握数组方法。原文通过实现25个数组方法来理解及高效使用数组方法(长文,建议收藏) 译者前端小智Fundebug经授权转载版权归原作者所有。要在给定数组上使用方法只需要通过[].方法名即可这些方法都定义在Array.prototype对象上。在这里咱们先不使用这些相反咱们将从简单的方法开始定义自己的版本并在这些版本的基础上进行构建。没有比把东西拆开再重新组装起来更好的学习方法了。注意当咱们的实现自己的方法时不要覆盖现有的方法因为有的库需要它们并且这样也方便比较咱们自己的方法...

2020-07-21 11:46:02

Commander基本使用

随着NodeJs的不断发展,对于前端来说要做的东西也就更多,Vue脚手架React脚手架等等等一系列的东西都脱颖而出,进入到人们的视野当中,对于这些脚手架工具来讲也只是停留在应用阶段,从来没有想过脚手架是如何实现的?vue init webpack 项目名称是如何通过这样的命令创建了一个项目,其最重要的模块就是今天要说的Commander。Commander模块又国外TJ大神所编写项目地址:CommanderCommander基本用法Commander文档写的很详细,跟着文章详细的学习一

2020-07-20 16:24:24

碎碎酱的博客

老博客地址:https://www.suisuijiang.com/blog/文章基于 linaria 的 CSS in JS 方案解决在 Canvas 中使用自定义字体初次绘制文字时不生效的问题实现一套前端应用监控系统Vue SSR 内存泄漏问题从一次 vue ssr 渲染客户端报错, 来看 ssr 客户端激活过程移动端 vw 布局实现 1px 边框线的 scss mixinlerna 相关编写优雅的 commit message 并自动生成 changelogwebpack 4 新增 side.

2020-07-20 15:32:54

万法归宗——CGI

遥想腾讯实习那年,了解到了CGI,这种我以为只出现在教科书中,早就被扫进历史尘埃里的技术竟然还在鹅厂盛行着。一时纠结:我本想来大厂学习新技术,没想到却来这里考古。不过后来我和自己和解了,虽然CGI早被业界主流淘汰,但通过学习它,可以加深WebServer通信、HTTP协议的深层认识,也算有所收获。CGI 即Common Gateway Interface,译作“通用网关接口”。初次听闻,略感疑惑,实则每个字眼都值得玩味。1. Common通用,是一个显著特征。虽然我们听说过Java的Se...

2020-07-17 17:02:47

CGI是什么

CGI早期的Web服务器,只能响应浏览器发来的HTTP静态资源的请求,并将存储在服务器中的静态资源返回给浏览器。随着Web技术的发展,逐渐出现了动态技术,但是Web服务器并不能够直接运行动态脚本,为了解决Web服务器与外部应用程序(CGI程序)之间数据互通,于是出现了CGI(Common Gateway Interface)通用网关接口。简单理解,可以认为CGI是Web服务器和运行其上的应用程序进行“交流”的一种约定。Web系统结构CGI是Web服务器和一个独立的进程之间的协议,它会把HTT

2020-07-17 16:56:38

每天阅读一个 npm 模块(1)- username

最近工作比较繁忙,每天能用于学习知识的时间越来越少,深感这样不利于自己的技术提升。恰好想起 狼叔 所说的 “迷茫时学习 Node.js 最好的方法 - 每天看十个 npm 模块“,虽然每天没有那么多时间看十个模块,但时间就像海绵一样,挤一挤,每天阅读一个模块还是能做到的。希望通过这一系列的文章,一方面提醒自己在工作中牢记技术的初心,另一方面鞭策自己在 Node.js 的路上不断前行。一句话介绍第一个 npm 模块我选择的是 username,用于获取当前用户的用户名,当前版本为 3.0.0,周下

2020-07-16 18:00:47

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。