0%

CSS样式基本布局也是前端的基本功课,相比JS,自己这方面并没有做足功课,只能根据常见的面试题反向逼迫自己尽快复习了,实习春招和秋招加油吧

阅读全文 »

前端性能优化的相关内容,好好掌握消化,其实这一部分实用性远高于应试性,很考验各位前端仔的实战水平的

阅读全文 »

javascript基本知识,建议有一定基础,再阅读过《JavaScript高级程序设计》(俗称红宝书)的基础上之后进行阅读,开始准备面试吧,初战不利,更应该多刷面经,多背基础,毕竟是实习和校招,基础要夯实,推荐观看 冴羽的博客 ,内容丰富,适合有一定JS基础的人进行阅读

阅读全文 »

手写常见js函数,面试必备,多练几遍,争取手撕成功,按照顺序补充,加油啊,除了算法题这种题也很关键,总算重新整理了一遍,以该版本为作为自己最终收藏的版本更新了。

目录

1.手写 call

2.手写apply

3.手写bind✅️

4.手写new

5.手写Object.create

6.手写ES5继承

7.手动实现instanceof

8.手写Array.isArray

9.实现一个函数判断数据类型

10.手写深拷贝

11.数组扁平化

12.数组去重

13.手写数组ES5常见方法

14.实现数组原地反转

15.reduce的应用汇总

16.洗牌算法

17.对象扁平化

18.手写偏函数

19.函数柯里化

20.手写compose函数

21.[实现 (5).add(3).minus(2) 功能](#21.实现 (5).add(3).minus(2) 功能)✅

22.[实现一个 add 函数](#22.实现一个 add 函数)✅

23.计算两个数组的交集

24.手写对象深度比较

25.扁平数组转树状结构

26.防抖(debounce)

27.节流(throttle)

28.手写const

29.手写双向绑定

30.图片懒加载

31.区间随机数生成器

32.打印菱形

33.手写parseInt

34.手写JSON.stringify

35.手写JSON.parse

36.[解析 URL Params 为对象](#36.解析 URL Params 为对象)✅

37.模板引擎实现

38.驼峰命名-中划线转换

39.查找字符串中出现最多的字符和个数

40.字符串查找

41.实现千位分隔符

42.正则表达式的基本运用

43.手写trim

44.版本号比较

45.手写Object.freeze

46.实现ES6的extends

47.手写实现Set

48.手写实现Map

49.检测对象循环引用

50.单例模式

51.观察者模式

52.发布/订阅模式 (EventBus/EventEmitter)

53.手写事件代理

54.手写JSONP跨域

55.手写Promise

56.手写ajax封装

57.手写实现sleep

58.手写promisify

59.实现延时执行队列

60.setTimeout实现setInterval

61.手写fetch

62.手写实现Generator

63.手写实现async/await

64.手写异步串行和异步并行

65.异步并发数限制

66.LazyMan

67.Promise超时重新请求

阅读全文 »

转自 https://juejin.im/post/6844904096525189128

笔者刚接触async/await时,就被其暂停执行的特性吸引了,心想在没有原生API支持的情况下,await居然能挂起当前方法,实现暂停执行,我感到十分好奇。好奇心驱使我一层一层剥开有关JS异步编程的一切。阅读完本文,读者应该能够了解:

  1. Promise的实现原理

  2. async/await的实现原理

  3. Generator的实现原理

阅读全文 »

搭建一个博客不难,但是网上资料好多坑。我也是一个刚入门小白,可能有些会写错,请在评论指出。但是有经过实战测试的。 我用的博客框架是 hexo,采用 NexT 主题 ,使用 Github 托管项目,使用Github Pages实现页面搭建。

阅读全文 »

使用 Vue搭建的电商管理后台项目,手把手地指引新人每一步的过程,项目调用了别人提供的后端接口。笔记我是重新梳理了一遍,只有动手做才能发现自己踩过的坑,加以改进。为了方便,我最终选择将自己学习搭建的Vue电商项目托管至Gitee Pages和GitHub Pages,实现项目的正式上线 Vue电商项目(Gitee Pages)Vue电商项目(GitHub Pages),其中GitHub Pages采用的是我自己在阿里云配置的域名,所以和博客是同一个域名。

阅读全文 »

常见设计模式

1.为什么要学习设计模式?

在许多访谈中,你可能会遇到很多面向对象编程中的接口,抽象类,代理和以及其他与设计模式相关的问题。 一旦了解了设计模式,它会让你轻松应对任何访谈,并可以在你的项目中应用这些特性。在应用程序中实现设计模式已经得到验证和测试。

为了使应用程序具有可扩展性,可靠性和易维护性,应该编写符合设计模式的代码。

2.什么是设计模式。

设计模式是我们每天编程遇到的问题的可重用解决方案。

设计模式主要是为了解决对象的生成和整合问题。

换句话说,设计模式可以作为可应用于现实世界编程问题的模板。

3.设计模式的发展历史

设计模式的概念是由四人帮(《设计模式(可复用面向对象软件的基础)》的四位作者)提出。

四人帮把这本书分成两部分:

第一部分解释面向对象编程的优缺点。

第二部分是关于 23 个经典设计模式的演变。

自提出设计模式概念后,四人帮设计模式在软件开发生命周期中发挥了重要作用。

4.设计模式分类

根据实际应用中遇到的不同问题,四人帮将设计模式分为三种类型。

  • 创建型模式
  • 结构型模式
  • 行为型模式

接下来将概述属于这三种类型的 23 种设计模式的主要概念。

阅读全文 »

去看新版本吧,这一版本不折腾了,好多抄的,自己都没有整明白。

手写常见js函数,面试必备,多练几遍,争取手撕。

阅读全文 »