自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 亲测解决npm ERR! Unexpected end of JSON input while parsing near...的方法

今天在创建项目的时候,发现一直创建不成功,安装项目依赖的时候报错:npm ERR! Unexpected end of JSON input while parsing near…具体报错详情:经过自己亲测发现如下解决方法:方案一(亲测已解决):清除缓存npm cache clean --force再安装npm install方案二(无亲测):由于我用上面方案一的方法...

2020-01-31 21:23:12 38985 16

原创 图解HTTP缓存

2020-07-31 23:12:03 253

原创 搭建一个本地的数据接口

搭建一个的本地数据接口(json server)在前端开发过程中避免不了有时需要伪造模拟数据先行开发,启动一个本地数据接口,对于前端开发人员来说至关重要,当然方式有很多种,今天分享json server 搭建一个本地数据接口的实现方式。首先附上在线学习网址:https://github.com/typicode/json-server第一步:全局安装:npm install -g json-server第二步:创建一个文件夹1:cd 到创建的文件夹——>npm install以下默认

2020-06-18 16:24:22 5659 1

原创 二维数组中的查找

题目描述:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解题思路:遍历数组与目标值比较代码:function Find(target, array){ const arr = array.length; const len = ...

2020-04-29 08:21:10 422

原创 CSS3基础知识总结

CSS3中有哪些新特性?1. CSS3边框边框圆角(border-radius)阴影(box-shadow)图片绘制边框(box-image)2. CSS3背景背景图片大小(background-size)背景图片的定位区域(background-origin)3. CSS3文本效果文本阴影(text-shadow)允许对文本进行换行(word-wrap)4. C...

2020-04-10 15:09:38 300

原创 vue生命周期

什么是vue生命周期?每个实例在被创建时都要经过一系列的初始化过程–例如:需要设置数据监听、编译模板、将实例挂载到DOM并在数据变化时更新DOM等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,这给了用户在不同阶段添加自己的代码的机会。生命周期图vue生命周期可以分为如下几个阶段:创建前/后、挂载前/后、更新前/后、销毁前/后。beforeCreate:组件创建之前执行的函数,此时d...

2020-04-04 22:46:08 193

原创 JavaScript中数组扁平化

问题:什么是数组扁平化?就是将一个嵌套多层的数组转换为只有一层的数组。例如:[1,[2,[3,[4,5]]]]扁平化即为:[1, 2, 3, 4, 5]1.for循环递归 (利用for循环数组元素,要是数组元素为数组则就递归调用) var array = [1,[2,[3,[4,5]]]] function flatten(array){ var result =...

2020-04-03 22:15:53 222

原创 JavaScript中数组去重

关于数组去重是常见面试题,下面列举几种数组去重的方法:1.数组去重(双层for循环嵌套) var array = [1,1,3,4,3] function unique(array){ var res = []; for(var i=0; i<array.length; i++){ for(var j=0; j<...

2020-03-31 23:00:25 217

原创 vue中MVVM的理解

什么是MVVM呢?顾名思义:MVVM就是Model-View-ViewModelModel就是数据模型(亦指数据层)可以是我们固定死的数据,也可以是来自服务器请求来的数据。View就是页面DOM(亦指视图层)主要就是向用户展示信息的。ViewModel 在vue中就是指vue实例(亦指数据模型层)充当View与Model之间通信的桥梁。他们之间是如何工作的呢?看下图从上图很明白就知道...

2020-02-26 16:34:42 2420

转载 几种常用的响应式布局解决方案对比(媒体查询、百分比、rem和vw/vh)

简要介绍:前端开发中,静态网页通常需要适应不同分辨率的设备,常用的自适应解决方案包括媒体查询、百分比、rem和vw/vh等。本文从px单位出发,分析了px在移动端布局中的不足,接着介绍了几种不同的自适应解决方案。px和视口媒体查询百分比自适应场景下的rem解决方案通过vw/vh来实现自适应一、px和视口在静态网页中,我们经常用像素(px)作为单位,来描述一个元素的宽高以及定位信息...

2020-02-21 17:10:18 1085

原创 深入理解JavaScript作用域和作用域链

作用域JavaScript中作用域是指可访问变量的集合(对象、函数也是变量)。作用域规定了程序在执行时该如何查找变量,也就是确定当前执行代码对变量的访问权限。作用域分为:词法作用域(静态作用域)、动态作用域。那么什么是静态作用域,动态作用域呢?静、动态作用域JavaScript中采用的是词法作用域(静态作用域)。静态作用域:函数的作用域在函数定义时就决定了。动态作用域:函数的作用域...

2020-02-01 21:27:35 266

原创 HTTP状态码详解

HTTP状态码(响应码)用来表明HTTP请求是否已经成功完成.HTTP响应类型一共分五大类:消息响应成功响应重定向客户端错误服务器端错误下表列出了所有HTTP状态码,以及他们各自所代表的含义:小结:面试中常被问到 200、301、302、404、405、501、504、505等...

2020-01-05 15:40:23 250

原创 浅谈JavaScript中typeof与instanceof的区别

JavaScript中数据类型JavaScript中数据类型分为基本类型和引用类型。JavaScript中有5中简单数据类型(基本数据类型),分别是:Undefined、Null、Boolean、Number 和 String。引用类型:Object(也称为复杂数据类型)、Array、Data、RegExp、Function。在ES6中又增加了一种新的原始数据类型:Symbolsymbo...

2019-12-19 12:44:11 253

原创 STM32正倒计时器程序设计

基于STM32的正倒计时器程序设计课程设计要求如下:使用通用定时器定时产生0.01秒基时,进而产生秒、分,在LCD上显示分钟、秒、秒小数各2位;用4个按钮控制正计时、倒计时、启动、停止。在LCD上显示出当前的计时方式(正计时、倒计时)。按正计时、倒计时按钮后,显示出开始的时间,分别为0和30分钟。设计步骤:使用stm32CobeMx配置系统、初始化设备、创建工程。使用MDK5组织工程...

2019-12-18 16:10:36 12192 1

原创 Git常用命令大全

Git常用命令大全

2019-12-18 14:03:08 238

原创 项目中字体图标的使用详解

作为一名前端开发学习者,经常在项目中需要用到各种小图标,那么这些小图标其实不用我们抠出当作图片使用,现在很多UI提供很多字体图标。以阿里的图标为例。1. 首先要去阿里巴巴图标官网下载网址 :https://www.iconfont.cn/进入官网后然后在搜索你需要的图标,然后点击加入购物车2. 下载图标刚刚已经添加你需要的图标到购物车里面了,现在就点击进去购物车,下载图标,如下:3...

2019-12-14 13:53:06 499

原创 ES6中Set和Map数据结构(2)

ES6提供了新的数据结构 Set 和 Map。上一篇:Set 数据结构Map在JavaScript中对象(Object),本质上是键值对的集合,但是传统上只能用字符串当作键,ES6中的 Map 数据结构也是键值对的集合,但是它的键不限与于字符串,各种类型的值包括对象都可以当作键。//ES5 中Objectconst data = {};const element = document....

2019-12-07 12:54:17 290

原创 leetcode之20 有效的括号

有效的括号题目描述:给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示...

2019-12-07 10:01:41 136

原创 ES6中Set和Map数据结构(1)

ES6提供了新的数据结构 Set 和 Map。SetSet 类似于数组,但是其成员的值是唯一的,没有重复的值。Set本身是一个构造函数,用来生成 Set 数据结构。Set 函数可以接受一个数组(或者具有 iterable 接口的其他数据结构)作为参数,用来初始化。const s = new Set([1,2,3,4,1]);console.log(s) //Set(4){1...

2019-12-06 21:18:04 292

原创 ES6中 Symbol

在学习ES6之前已经学过 6 种基本的数据类型,分别是:Object ,Number ,String ,Boolean ,Null ,UndefinedES6中新增了一种基本数据类型:Symbol1. Symbol 的基本用法let s = Symbol();console.log(typeof s) //symbol2. Symbol 的特点Symbol 是独一无二的值。let ...

2019-12-05 21:47:11 356

原创 vue 实现图书购物车小案例

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>tushu</title> <style> .active{ color: red; } table{ border: 1px solid ...

2019-12-05 18:00:50 1741 1

原创 jQuery实现侧边下拉导航栏

<!Doctype html><html><head> <meta charset="utf-8"> <title>下拉导航栏</title> <style> a{ text-decoration:none; } .menu{ margin:100px ...

2019-12-05 17:49:41 1047

原创 jQuery实现淡入淡出效果轮播图

<!Doctype html><html><head> <meta charset="utf-8"> <title>淡入淡出轮播图</title> <style> ul{ list-style: none; } img{ width:100%; height:500px...

2019-12-05 17:44:29 434

原创 jQuery实现滚动轮播图

之前学习jQuery时做的小案例:滚动轮播图小案例该案例主要分为以下几个步骤:用HTML以及CSS对页面结构做布局(包括左右切换按钮,小圆点)。写jQuery代码实现功能(需要先引入jQuery)先实现右按钮点击切换事件(需要注意防止动画重复,边界值判断,对应的小圆点的改变)右按钮点击切换事件同上然后实现小圆点事件(鼠标进入发生对应切换,包括当前小圆点的改变,对应图片的切换)可以添...

2019-12-05 17:37:52 622

原创 ES6中对象的扩展

1. 属性的简洁表示法2. 属性名表达式3. 方法的 name 属性4. 属性的可枚举性和遍历5. super 关键字6. 对象的扩展运算符ES6对对象进行了重大的升级,具体包括下面:1. 属性的简洁表示法const foo = 'bar';const baz = {foo};baz // {foo: "bar"}// 等同于const baz = {foo: foo};...

2019-12-05 16:52:08 321 1

原创 ES6中箭头函数

箭头函数包含以下几个内容:1 箭头函数的基本用法2 使用箭头函数注意事项3 箭头函数的 this4 不适用箭头函数的场合5 嵌套的箭头函数下面是每个内容详情:1 箭头函数的基本用法//ES5 普通函数var function foo(e){ return e;}//ES6 箭头函数var foo = e => e;如果箭头函数的参数是一个参数那么可以直接写成上...

2019-12-02 11:23:20 783

原创 ES6中函数name属性

函数的 name 属性返回该函数的函数名。//实例一function foo() {}console.log(foo.name); // "foo"//实例二function gets(){}console.log(gets.name); // "gets"函数的 name 属性早就被浏览器支持了,但是直到ES6才将其写入标准。需要注意的是,ES6 对这个属性的行为做出了一些...

2019-11-30 12:36:10 648

原创 ES6中严格模式

从ES5开始,函数内部就可以设定为严格模式。function(x,y){ 'use strict';}ES6将其做了一些规定,只要函数参数使用了默认值,解构赋值,扩展运算符,那么函数内部就不能显式设定严格模式了,否则会报错。function doSomething(a, b = a) { 'use strict';}const doSomething = function (...

2019-11-30 11:28:43 628 2

原创 ES6中rest参数

在ES6中引入了 rest 参数,它的形式是是(...变量名)作用:用于获取函数的多余参数,这样就不用使用 arguments 对象了。rest 参数搭配的变量是一个数组,该变量将多余的参数放入数组中。例如:function add(...values){ let num = 0; for(let s of values){ num ...

2019-11-30 11:08:13 656 1

原创 ES6中函数参数的默认值

基本用法在学习ES6之前,不能直接为函数参数指定默认值,只能采取变通的方法。如下: function gets(x,y){ y = y || 0; console.log(x,y); } gets(2); //2 0 gets(2,2); //2 2 gets(2,) //2 0...

2019-11-29 13:11:53 1362 1

原创 ES6中数值的扩展

ES6中对于数值增加了很多的扩展,主要包括以下几类:二进制和八进制表示法Number.isFinite(), Number.isNaN()Number.parseInt(), Number.parseFloat()Number.isInteger()Number.EPSILON安全整数和 Number.isSafeInteger()Math 对象的扩展指数运算符1, 二进制和...

2019-11-28 16:56:38 284

原创 ES6中变量的解构赋值

ES6中变量的解构赋值1 数组的解构赋值2 对象的解构赋值3 字符串的解构赋值4 数值和布尔值的解构赋值(先转为对象)5 函数参数的解构赋值不能使用圆括号1 变量声明语句2 函数参数3 赋值语句的模式可以使用圆括号只有一种情况就是赋值语句是非模式用途(1)交换变量的值(2)从函数返回多个值(3)函数参数的定义(4)提取 JSON 数据(5)函数参数的默认值(6)...

2019-11-27 13:09:14 191

原创 JavaScript数据结构与算法--栈(下)

在栈的上一次笔记中,用的是基于数组实现的栈类,这次我是基于对象来实现栈的封装,这次使用的ES6增加的class类的语法,其实没有啥,就是把function函数换成的class实现类,更加快捷。基于数组实现栈可参照我的上一篇博客:JavaScript数据结构与算法–栈(上)基于JavaScript对象创建一个栈<!DOCTYPE html><html lang="en"&g...

2019-11-26 21:50:02 250

原创 快速体验Vue.js

最近在复习之前学过的Vue.js的知识,重在把基础打牢,今天的内容是重温什么是Vue.js?如何使用Vue.js开发,会有一个Vue.js的快速体验。什么是Vue.js?它简单小巧的核心你个,渐进式技术栈,足以应付任何规模的应用。在Vue.js的官网文档中这样写到:Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为...

2019-11-26 21:04:25 274

转载 前端优化--提高 Web 性能的9 大技巧

当今数字世界,存在着无数的网站,每天都需要处理各种不同的原因的访问。然而,这些网站中有很大一部分显得笨重,使用起来也很麻烦。没怎么优化的网站会被各种各样的问题困扰,包括加载时间、不支持移动设备、浏览器兼容性问题,等等。这篇文章讲述可以帮助改善优化前端的技术,非常有用。主要内容有清理代码、压缩图片、压缩外部资源、使用 CDN,以及一些其它方法。这些方法会为你的网站带显著的速度提升和整体性能提升。...

2019-11-19 12:23:08 456

原创 JavaScript数据结构与算法--栈(上)

数据结构中的栈结构是一种遵循 后进先出(last in first out)原则的一个有序集合,新添加的元素保存在栈顶,最先插入的元素在栈底。栈中一些常见的方法:push(element) 添加新元素到栈顶,也可以一次添加多个。pop() 移除栈顶元素,同时返回被移除的元素。peek() 返回栈顶元素,不对栈做任何修改(不会移除栈顶元素)。isEmpty() 判断栈是否为空,为空返回...

2019-11-19 11:02:23 509

原创 前端优化--高性能的CSS

我觉得在学习前端中,CSS的学习应该是相对比较简单的,也是入门比较快的,那么如何写出高性能的CSS呢?我们应该知道在前端开发中,HTML和CSS代码 的可读性和可维护性是非常重要的,那么我们在保证可读性和可维护性的前提下,如何让代码的解析速度更快呢?1 首先使用高效的CSS选择器关于高效的CSS选择器,用三个例子作比较:1 .get .list div2 .get .list-item3...

2019-11-18 22:00:02 644

原创 ES6中块级作用域

ES5中只有全局作用域和函数作用域,没有块级作用域,这导致很多场景不合理。1 内层变量可能会覆盖外层变量。2 用来计数的循环变量泄露为全局变量(for循环中)1 内层变量可能会覆盖外层变量。var s = 'nihao';function test(){ console.log(s); if(true){ var s = '你好'; }}test(); //und...

2019-11-18 20:48:23 410

原创 ES6中let和const命令

ES6中let和const命令let命令ES6中新增了 let 命令,用于声明变量,关于let有以下几个特点:1 用法类似于var,但是所声明的变量只在 let 命令所在的代码块内有效,实现了块级作用域且不会污染全局变量。2 不存在变量提升3 暂时性死区4 同一个变量在相同作用域内不允许重复声明下面围绕这四个特点进行详细的分析let 的基本用法let声明的变量与var不用的是,l...

2019-11-18 19:58:51 597

原创 leetcode之35 搜索插入位置

35. 搜索插入位置题目描述:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入:...

2019-11-17 17:18:48 390 1

stm32正倒计时器程序设计

使用通用定时器定时产生0.01秒基时,进而产生秒、分,在LCD上显示分钟、秒、秒小数各2位;用4个按钮控制正计时、倒计时、启动、停止。在LCD上显示出当前的计时方式(正计时、倒计时)。 按正计时、倒计时按钮后,显示出开始的时间,分别为0和30分钟。

2019-12-18

空空如也

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

TA关注的人

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