自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 火狐浏览器图片显示异常,控制台检查是图片A,但是显示的是上一张图片

在vue里面通过v-if 或v-show来做不同图片之间的切换时,在火狐浏览器上会因为加载问题导致,图片没有及时更新到最新版本,但是控制台查看元素时路径却是正确的,这是只要将v-show或v-if提到img标签的外层,并不直接控制img的切换就可以了//修改后<div v-show="flag"> <img><div/>//修改前<img v-show="flag">...

2022-01-20 10:10:02 632 1

原创 html2canvas在ios safiri浏览器截图内容缺失

html2canvas在ios safiri浏览器截图内容缺失在pad上 : 取消vh定位取消CSS3里面的一些样式,例如transform系列 , transtion属性和animation属性

2022-01-14 10:52:19 447

原创 PC端使用融云IM即时通讯

融云PC端开发者文档引入在public的index.html下引入<script src="https://cdn.ronghub.com/RongIMLib-2.5.0.min.js"></script><script src="https://cdn.ronghub.com/RongEmoji-2.2.7.min.js"></script><script src="https://cdn.ronghub.com/rong-sticker-1

2021-04-21 10:56:23 1063

原创 2020前端面试真题( HTML + CSS )

1.HTML5 存储类型有什么区别?HTML5 能够本地存储数据,在之前都是使用 cookies 。HTML5 提供了两种本地存储方案: localStorage 用于持久化的本地存储,数据永远不会过期,关闭浏览器也不会丢失。 sessionStorage 同一个会话中的页面才能访问并且当会话结束后数据也随之销毁。因此sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储。2.cookie、localStorage、sessionStorage的区别?特性cookiel

2021-01-14 10:18:05 990

原创 2020前端面试真题( ES6 )

ES6 阮一峰ES6入门教程1.使用箭头函数应注意什么?(1)用了箭头函数,this就不是指向window,而是父级(指向是可变的)(2)不能够使用arguments对象(3)不能用作构造函数,所以不能使用new命令,否则会报错(4)不可以使用yield命令,因此箭头函数不能用作 Generator 函数2.简述es6的新特性增加块作用域增加let const解构赋值函数参数扩展 (函数参数可以使用默认值、不定参数以及拓展参数)增加class类的支持增加箭头函数增加模块和模块加载

2021-01-04 21:06:44 546

原创 2020前端面试真题( Vue )

1.computed和watch的区别?computed:如果不使用计算属性,那么 message.split(’’).reverse().join(’’) 就会直接写到 template 里,那么在模版中放入太多声明式的逻辑会让模板本身过重,尤其当在页面中使用大量复杂的逻辑表达式处理数据时,会对页面的可维护性造成很大的影响,而且计算属性如果依赖不变的话,它就会变成缓存,computed 的值就不会重新计算。而且他返回的是一个值,同时也不能进行异步操作。所以就有了watch。watch也是用来监听数据

2021-01-04 21:06:12 1658

原创 2020前端面试真题( React )

1.Redux遵循的三个原则是什么?单一数据来源:整个应用的状态存储在单个 store 中的对象/状态树里。单一状态树可以更容易地跟踪随时间的变化,并调试或检查应用程序。状态是只读的:改变状态的唯一方法是去触发一个动作。动作是描述变化的普通 JS 对象。就像 state 是数据的最小表示一样,该操作是对数据更改的最小表示。使用纯函数进行更改:为了指定状态树如何通过操作进行转换,需要用纯函数。纯函数是那些返回值仅取决于其参数值的函数。2.redux工作流程首先,UI组件发出 Action。然后,

2021-01-04 21:05:33 1334

原创 2020前端面试真题( JS )

1.为什么JavaScript是单线程?作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM。这决定了它只能是单线程,否则会带来很复杂的同步问题。比如,假定JavaScript同时有两个线程,一个线程在某个DOM节点上添加内容,另一个线程删除了这个节点,浏览器不知道该以哪个线程为主,单线程这已经成了这门语言的核心特征。为了利用多核CPU的计算能力,HTML5提出Web Worker标准,允许JavaScript脚本创建多个线程,但是子线程完全受主线程控制,且不得操作DOM。所以

2021-01-04 21:03:37 625

原创 2020前端面试真题(Node.js,Git ,Webpack,项目实战)

HTML51.HTML5 存储类型有什么区别?HTML5 能够本地存储数据,在之前都是使用 cookies 。HTML5 提供了两种本地存储方案: localStorage 用于持久化的本地存储,数据永远不会过期,关闭浏览器也不会丢失。 sessionStorage 同一个会话中的页面才能访问并且当会话结束后数据也随之销毁。因此sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储。2.cookie、localStorage、sessionStorage的区别?特性co

2020-12-09 20:24:23 1004 2

原创 react函数组件中使用echarts以及echarts设置了不显示,没有高度的原因

首先按需引入模块// 引入 ECharts 主模块import echarts from 'echarts/lib/echarts';// // 引入提示框和标题组件import 'echarts/lib/component/tooltip';import 'echarts/lib/component/title';import 'echarts/lib/component/legend'import 'echarts/lib/chart/pie';设置echartsconst .

2020-11-30 08:51:39 3656 1

原创 mongodb数据库实现多维数组的模糊查询

最近有一个需求,要查询一个二维数组下面是否含有某个字段"jichu" : [ [ "商品名称", "罗衣知性保暖毛呢西装外套女2020冬装新款通勤OL深蓝色西服03476 深蓝色 M" ], [ "商品品牌", "Roeyshouse" ], [ "商品进价", "2

2020-11-26 08:27:45 1438

原创 node.js的413(Payload too large)以及后续在后台req.body显示undefined的原因

最近在写项目的时候要向后台发送base64的数据,但是因为数据太大而导致出现了413bug,查阅了一些资料,解决办法如下:下载 模块 npm i body-parser在App.js下使用var bodyParser = require('body-parser');app.use(bodyParser.urlencoded({ extended: true }));//允许传送的数据大小,自己修改app.use(bodyParser.json({ limit: '100Mb' }));.

2020-11-21 16:30:59 881 1

原创 React根据条件渲染不同的组件

最近在做一个电商后台管理项目,碰到了一个要根据前面的条件不同来渲染不同的组件,如下图所示要根据商品的分类来显示不同的商品属性,最开始以为简单的使用switch来判断条件即可,但是在react组件当中,一个函数是不能返回另一个函数的,这就导致了一系列的bug。后来换一种思路就解决了 {classfy[0] === '服装' && (<ShowClother/> )} {classfy[0] === '家电' && (<Show

2020-11-21 16:18:13 2616

原创 react,vue编写接口文档

1. 安装模块npm i apidoc --global2.配置packag.json在文件最底部"apidoc": { "title": "ERP admin pro", //随便取 "url" : "http://localhost:3001/" //项目的端口号}3.编写接口文档在路由的配置前添加如下代码(星号注释起来的部分)注意一定要写在路由的前面,不然不起作用var router = require('express').Router()var sql = re

2020-11-18 19:58:20 477

原创 React Hooks有什么作用?React Hooks的一些钩子函数,类组件和函数式组件的区别

在介绍React Hooks之前,不得不先说说类组件和函数式组件关于React的两套API(类(class)API 和基于函数的钩子(hooks) API)。对于任何一个组件来说,可以用class来写,也可以使用function来写,但是既然区分开来了,那么它们之间就一定有点区别。下面是两个方法的比较classComponentimport React from 'react'class App extends React.Component { state = { count : 1}

2020-11-12 20:59:22 2147

原创 promise面试题

关于Promise 的问题一览什么是 promise传统的回调式异步操作有什么缺点?(Promise是如何解决异步操作)Promise中的异步模式有哪些?有什么区别?如果想 Promise.all()和Promise.race()传递空数组,运行结果会有什么不同?如何确保一个变量是可信任的 Promise(Promise.resolve方法传入不同值的处理有哪些)Promise是如何捕获异常的?与传统的 try / catch 相比有什么优势?1.什么是promise下面的回答很像在背概

2020-11-11 19:15:39 826

原创 如何判断一个变量是否为数组?数组的原生方法有哪些?数组去重的方法?克隆数组的方法

如何判断一个变量是否为数组?为什么不用typeof?var list = [1,2,3];typeof list //“object”Array继承与Object,所以typeof 会直接返回object,所以不可以用typeof方法来检测为什么不用instanceof?var list = [1,2,3];list instanceof Array //trueinstanceof 表面上看确实是返回了true,但其实并不可靠。原因是Array实质是一个引用,用instanceof方法(包括

2020-11-11 10:53:35 533

原创 react 路由的几种使用方式

React Router包含了四个包包名Descriptionreact-routerReact Router核心apireact-router-domReact Router的DOM绑定,在浏览器中运行不需要额外安装react-routerreact-router-nativeReact Native 中使用,而实际的应用中,其实不会使用这个。react-router-config静态路由的配置主要使用`react-router-dom1.声明式路由

2020-11-11 08:38:53 1111

转载 什么是ajax?Ajax应用程序的优势?AJAX最大的特点是什么?原生js的ajax请求有几个步骤?AJAX的优缺点

什么是ajax?ajax作用是什么?AJAX = 异步 JavaScript 和 XML。 AJAX 是一种用于创建快速动态网页的技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.Ajax应用程序的优势通过异步模式,提升了用户体验优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。AJAX最大的特点是什么。Ajax可以实现..

2020-11-05 21:37:11 291

原创 闭包的定义,闭包是什么?闭包解决了什么问题?闭包有哪些应用场景?使用闭包应该注意什么?

1、闭包是什么?闭包是有权限访问其他函数作用域的局部变量的一个函数这是《 JavaScript高级程序设计 》中给出的定义, 如果你想用一句话就把面试官搞定几乎是不可能的。因为这句话还存在下面几个深入的问题:为什么其他非闭包的函数,没有权限访问另一个函数的内部作用域为什么闭包有这个权限什么是函数作用域面试官更想知道的是你是否知道上面的内容更周全的解释方法:由于在JS中,变量的作用域属于函数作用域,在函数执行后作用域就会被清理、内存也随之被收回,但是由于闭包是建立在一个函数内部的子函数,

2020-11-05 20:50:08 8528 3

原创 v-show和v-if的区别

v-if和v-show都是条件渲染,但不同的是v-if是“真正”的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。v-if也是惰性的,即在初始条件为假时,并不会渲染DOM结构,只有在条件变为真时才会第一次渲染DOM。当条件变为假时,DOM又会被销毁,因此v-if有更高的切换开销。而v-show则简单得多,不管条件是否为真,DOM均会渲染,知识进行简单的CSS切换,可以理解为JS动态的改变DOM的display。正因为v-show的这种特性,v-show有更高的初始化开销,

2020-11-04 08:51:40 154

原创 webpack打包时遇到的一些问题(missing script: serve ; NODE_ENV‘ 不是内部或外部命令,也不是可运行的程序;operation not permitted)

package.json文件"scripts": { "start": "yarn dev", "dev": "cross-env NODE_ENV=development webpack-dev-server --config ./config/webpack.config.dev.js", "build": "cross-env NODE_ENV=production webpack --config ./config/webpack.config.dev.js " }

2020-11-03 20:04:44 961

原创 webpack的四个基本概念(入口,出口,loader,插件)

官方介绍webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。安装2020年10⽉webpack5.0.0正式发布,此处安装webpack4以及配置的cli3npm i webpack@4 webpack-cli@3 -gnpm i webpack@4 webp

2020-11-02 20:21:07 207

原创 jwt介绍及使用jwt实现单点登录

jwt : 全称JSON Web Token , 官方文档 :JSON Web Token(JWT)是一个开放标准(RFC 7519),它定义了一种紧凑且独立的方式,可以在各方之间作为JSON对象安全地传输信息。此信息可以通过数字签名进行验证和信任。JWT可以使用秘密(使用HMAC算法)或使用RSA或ECDSA的公钥/私钥对进行签名。通俗来讲,JWT是一个含签名并携带用户相关信息的加密串,页面请求校验登录接口时,请求头中携带JWT串到后端服务,后端通过签名加密串匹配校验,保证信息未被篡改。校验通过则认为.

2020-10-21 20:33:13 854

原创 express框架下载及使用

Express 是一个基于 Node.js 平台的极简、灵活的 web 应用开发框架,它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用。Express 是一个自身功能极简,完全是由路由和中间件构成一个的 web 开发框架:从本质上来说,一个Express 应用就是在调用各种中间件。中间件本质上就是一个函数,中间件的功能包括:执行任何代码。修改请求和响应对象。终结请求-响应循环。调用堆栈中的下一个中间件。官网地址 : http://www.expressjs.com.cn/.

2020-10-16 20:00:58 2024

原创 mongodb数据库的安装及使用

数据库:在计算机中长期帮应用存储数据的。数据库分类关系型数据库 : mysql , orcale , sqlserver关系型数据库最典型的数据结构是表,由二维表机器之间的练习所组成的一个数据组织优点:易于维护 : 易于维护 : 都是使用表结构,格式一致;Mysql orcale sqlserve都是基于SQL语句的,格式是非常像的。使用方便:SQL语言通用,可用于复杂查询;复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。多表查询,表关联的操作,事务操作,触发器。.

2020-10-16 19:38:18 222

原创 node.js的安装和npm命令详解

简介node.js是一个基于chrome V8 引擎的 JavaScript 运行环境。node.js使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。node.js的包管理器 npm , 是全球最大的开源库生态系统安装官网地址 : http://nodejs.cn查看是否安装成功 :node -v : 查看node.js版本npm -v : 查看npm版本node -h : 帮助信息安装淘宝镜像 : 地址 : http://npm.taobao

2020-10-12 20:52:48 506

原创 vue生命周期图解

vue生命周期共有8个函数var app = new Vue({ el: '#app', data: { message: 'hello', value: '123', list: [] //[1,2,3,4] }, // template: ` // <div id="app" class="two"> // <h1>{{message}}.

2020-09-28 17:47:30 371 1

原创 var和function的预解析,以及变量和function的先后顺序的问题

function b() { console.log(a);// function a(){} var a = 10; function a() { }; a = 100; console.log(a);//100 } b(); function c() { console.log(a);/.

2020-09-21 08:10:06 958

原创 力扣之两个数组的交集(给定两个数组,编写一个函数来计算它们的交集。)

力扣之两个数组的交集1题目描述 : 给定两个数组,编写一个函数来计算它们的交集样例输入 示例 : 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2]; 输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出:[9,4]说明: 输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序。var intersection = function(nums1, nums

2020-09-16 13:58:10 1147 1

原创 JS对象的深复制

JS实现对象的深复制function cloneObject(source,target){ var list=["number","string","boolean","undefined","null","function"]; if(target===undefined){ // 判断源对象是否是HTML标签 if(HTMLElement.prototype.isPrototypeOf(s

2020-09-14 20:37:51 251 1

原创 力扣之单词规律(给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。)

单词规律题目描述 : 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律示例 :示例 : 输入: pattern = "abba", str = "dog cat cat dog" 输出: true 输入:pattern = "abba", str = "dog cat cat fish" 输

2020-09-13 15:39:16 1455

原创 力扣之缺失数字(给定一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数。)

缺失数字题目描述 : 给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。 示例 : 输入: [9,6,4,2,3,5,7,0,1] 输出: 8var missingNumber = function(nums) { nums.sort(function(a , b){ return a - b; }) for(var i = 0 ; i &l

2020-09-12 14:34:03 466

原创 力扣之丑数(只包含质因数 2, 3, 5 的正整数。)

丑数题目描述 : 编写一个程序判断给定的数是否为丑数。丑数就是只包含质因数 2, 3, 5 的正整数将传入的num循环就好了var isUgly = function(num) { if (num === 0) return false while (num !== 1) { if (num % 2 === 0) num = num / 2; else if (num % 3 === 0) num = num / 3; else if (num % 5

2020-09-12 14:11:22 1241

原创 力扣之各位相加(给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。)

各位相加题目描述 : 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。/* 示例 : 输入: 38 输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。 */ var addDigits = function(num) { if(num.toString().length === 1) return num; num = num + "";

2020-09-12 10:29:55 2336

原创 JS对象的相关方法

对象的方法Object.freeze( obj ) : 冻结对象,使对象的属性不能删除和修改var obj = { a : 1 , b : 2};Object.freeze(obj);delete obj.a;obj.b = 20;console.log(obj) //{a: 1, b: 2}对象属性不会改变Object.is : 相当于 ===<script> //在任何时候NaN等于任何数都是false,包括他自己。 console.log( NaN === N

2020-09-12 09:02:08 119 1

原创 力扣之有效的字母异位词(给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词)

字母异位词题目描述 : 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。解题思路 : 要满足字母异位词的条件,首先两个字符串的长度一定是相等的。其次,将字母按照ASCII码排序之后,两个字符串一定是一样的。详细见代码var isAnagram = function(s, t) { if (s.length !== t.length) return false; var arr1 = [] var arr2 = []; //将字

2020-09-12 08:14:11 612

原创 前端面试要点week2

前端面试要点week2代码题给定两个数组,写一个方法来计算它们的交集//低级写法 : function jiaoji(arr1 , arr2){ //获得数组长度较少的哪一个数组 if(arr1.length > arr2.length){ var temp = arr1; arr1 = arr2; arr2 = temp } //[2, 2] [1, 2, 2, 1] 此时数组长度较短的那个就是arr1了 //ar

2020-09-11 20:33:41 87

原创 算法

算法定义 :算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。算法的特性输入输出 : 算法具有0个或者多个输入 , 至少有一个输出有穷性 : 指算法在执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成。确定性 : 算法的每一个步骤都具有确定的含义,不会出现二义性。可行性 : 算法的每一步都必须是可行的,也就是说,每一步都能够通过执行有限次数完成。算法设计的要求正确性 : 算法的正确性是指算法至少应该有输

2020-09-06 18:09:12 141

原创 力扣题库之快乐数

快乐数编写一个算法来判断一个数 n 是不是快乐数题目描述 : 快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。 // 如果 n 是快乐数就返回 True ;不是,则返回 False 。示例 :示例 : 输入:19 输出:true 解释: 1^2 + 9^2 = 82 8^2 + 2^2 = 68

2020-09-05 18:04:59 205

700道JavaScript习题及面试题(含答案).pdf

里面有许多关于前端的一些大场面试题,主要是原生JavaScript,ES6和JS异步问题,Vue组件通信和响应式原理

2020-11-24

空空如也

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

TA关注的人

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