自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 ECMAScript的面向对象

一、什么是对象面向对象语言有一个标志,就是类(class)的概念,通过类可以创建任意多个具有相同属性和方法的对象。但是ECMAScript没有类的概念,所以它的对象与其他基于类的语言中的对象有所不同。ECMA-262把对象定义成:“无序属性的集合,其属性包含基本值、对象或者函数。”这句话可以理解为,对象是由一组没有顺序的键值对组成的,值的类型可以为基本值(string、number、boolean、undefined、null)、对象或者函数。二、创建对象的方法ECMAScript和别的面向对象有什

2021-08-23 23:22:55 108

原创 你不知道的JavaScript注释

一、JavaScript注释注释用来在源码中增加提示、笔记、建议、警告等信息,可以帮助阅读和理解源码。在调试时,可以用来将一段代码屏蔽掉,防止其运行。JavaScript的注释分为单行注释 // 和多行注释 /* */ 两种。在单行注释中,在 // 后的文本都会视为注释,用法如下。function comment() { // 这是单行注释 console.log("Hello w...

2019-12-15 17:09:41 320

原创 无重复字符的最长子串

无重复字符的最长子串无重复字符的最长子串题目是LeetCode的第三题,描述如下:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输...

2019-11-28 21:25:43 217

原创 实现Javascript的new

一、new关键字介绍在js里声明对象的方式有好几种,但是每一种方案的底层就是对Object根对象进行一个继承来实现。为了让大家使用的方便,js提供了new关键字,具体的使用方法为var 变量名 = new 方法名(参数),实例代码如下:function Person(name) { this.name = name; this.sayName = function()...

2019-11-16 17:50:58 190

原创 FIFO、LFU算法的js代码实现

FIFO算法FIFO算法过程比较简单,先进入的数据先出来,这种行为方式就和队列是一样的。存入的时候从队列尾部进入,淘汰数据的时候从队列头部淘汰。取缓存的时候,直接遍历列表。示意图如下:FIFO使用js实现代码如下function Cache(key, value) { this.value = value; this.key = key;}functi...

2019-08-25 17:13:35 667

原创 缓存置换算法LRU

一、缓存置换算法介绍在面试阿里前端的时候,面试官提出LRU(Least recently used,最近最少使用)的问题,开始的时候犯一些方向性的错误,在面试官的提示下才想出思路。解决一个问题得分步骤,第一步也是最重要的一步,先搞懂LRU是什么,什么场景下使用LRU?LRU是什么?LRU是内存管理的一种页面置换算法,选择最近最久未使用的页面予以淘汰。通俗一点,内存最多只能存...

2019-08-23 22:48:05 775

原创 js模拟call和apply

一、call和apply介绍call()方法使用一个指定的this值和单独给出的一个或多个参数来调用一个函数。apply()方法调用一个具有给定this值的函数,以及作为一个数组(或类似数组对象)提供的参数。该方法的语法和作用与 apply() 方法类似,只有一个区别,就是 call() 方法接受的是一个参数列表,而 apply() 方法接受的是一个包含多个参数的数组。二...

2019-08-22 21:17:02 117

原创 冒泡排序时间复杂度计算和优化

简介冒泡排序是一种较简单排序算法。它重复地走访过要排序的元素列,依次比较和交换两个相邻的元素,每一次遍历会将一个元素“浮”到数列的顶端,所以命名为冒泡排序。排序过程对于数组[5, 10, 13, 15, 10, 100, 78, 46],要求从小到大排序。从下标为j开始,比较相邻两个元素,如果arr[j] > arr[j + 1],则交换元素。 然后j++,比较下一对元素。...

2019-08-10 17:48:38 3896 3

原创 从零构建react项目

一、背景本人是某小厂的普通前端,正打算学习react,有Vue和Angular的开发经验。用Vue构建过两个小型项目,用Angular构建过一个大型项目。借着学习react的机会,顺便更新一下博客,更新时间尽量保持规律。学习嘛,就简单点,使用react做一个个人网站。二、准备用过Vue和Angular的人都知道,前端项目用npm构建的话是需要引入各种包,还需要配置webpack的...

2019-07-27 23:41:13 140

原创 前端性能优化

1前端性能优化概览用户打开网页的时候,主要经历了5个过程:DNS解析 TCP连接 HTTP请求 服务端处理请求,HTTP响应返回 浏览器解析响应,开始渲染网站的性能优化,要从这5个方面来展开,其中DNS解析、TCP连接需要服务端提供支持才能进行优化,前端能够做的事是有限的。前端在http请求,页面渲染上可以优化的地方非常多。2网络篇http优化优化方向:减少请求次数...

2018-11-26 20:20:42 271 4

原创 vue项目做seo(prerender-spa-plugin预渲染)

对于vue、react、angular这类项目而言,seo真的是一大痛点。为什么seo是spa项目的痛点网络爬虫在爬取网页内容的时候,需要分析页面内容,主要有以下几点:从meta标签中读取keywords、description的内容。 根据语义化的html的标签爬取和分析内容。一个整体都是用div标签的网站和正确使用了html5标签的效果是不一样的。 读取...

2018-07-14 20:28:15 18879 24

原创 使用vue开发移动端页面问题集合

其实vue和这些问题没有什么冲突,移动端的问题主要体现跨域、苹果手机的兼容和微信浏览器上。技术栈vue2.0 + vuex + vue-router + webpack + axios + scss + ES6/7cookies跨域不能携带cookies在跨域的时候,每次刷新,cookies的值都会发生变化。这个时候是已经设置了Access-Control-Allow-Origi...

2018-07-12 21:16:13 6487

阿里巴巴json包

阿里巴巴json包,快速进行json对象与json字符串的转化

2016-01-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除