自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

转载 深拷贝和浅拷贝原来是这样?

为了让读者更好的理解深浅拷贝,在讲深浅拷贝之前要引入基本数据类型 , 引用数据类型 和 数据储存(栈和堆)这几个概念,如果已经理解,可直接跳过这一part。JS数据类型Q:前端面试常问,JS的基本数据类型有哪些呀?A:JS数据类型分为基本数据类型和引用数据类型,详细分类如下:Q:基本数据类型和引用数据类型的储存方式有什么不同?...

2019-09-02 17:20:00 184

转载 正则表达式详解

什么是正则?正则表达式(regular expression)是一种表达文本模式(即字符串结构)的方法,有点像字符串的模板,常常用来按照“给定模式”匹配文本。比如,正则表达式给出一个 Email 地址的模式,然后用它来确定一个字符串是否为 Email 地址。JavaScript 的正则表达式体系是参照 Perl 5 建立的。建立正则表达式使用内置RegExp构造函数...

2019-08-30 13:47:00 204

转载 关于p标签不能嵌套div标签引发的标签嵌套问题总结

问题由来:<p>中嵌套<div>标签,两个都是块级元素,按理应该可以正常显示,但是最后的结果居然是多出来一段<p>的效果,所以就在网上找了许多关于标签嵌套规则的资料,下面做一个个人总结。1.块级元素(block)与内联元素(inline)的区别:   1.1块元素,独占一行,宽高起作用:如:div , p , ul , ol ,tab...

2019-08-12 19:34:00 1053

转载 三种图表技术SVG、Canvas、WebGL 3D比较

1.什么是SVG?描述:一种使用XML描述的2D图形的语言SVG基于XML意味着,SVG DOM中的每个元素都是可用的,可以为某个元素附加Javascript事件处理器。在 SVG 中,每个被绘制的图形均被视为对象。如果 SVG 对象的属性发生变化,那么浏览器能够自动重现图形。2.什么是canvas?描述:通过Javascript来绘制2D图形。...

2019-08-09 15:10:00 858

转载 浏览器缓存机制

1.为什么要使用浏览器缓存  1.1减少网络请求  1.2加快浏览器响应时间解释:在用户浏览网络的时候,同一个域名下的网页大部分是有很多共同文件的,比如第三方js文件,css文件,所以我们不可能当用户每浏览一个网页或者刷新同一个网页时,所有文件都重新请求,那样的页面加载时间将会大大延长,用户体验也相当不好。浏览器是如何缓存的呢?话不多说,先上一个思维导图。2.缓...

2019-08-03 15:22:00 212

转载 react项目建立导入包问题总结

1.react和react-dom包使用react开发网页的话,我们难免会下载两个包,一个是react,一个是react-dom,其中react是react的核心代码。react的核心思想是虚拟Dom,其实虚拟Dom改变没有那么复杂,简单而言就是一个js的对象来表达一个dom包含的东西,例如如下代码:var element={ "tagName": "div",...

2019-07-31 17:38:00 426

转载 React中创建组件的3种方式

目前作者所知道的创建react组件的方式有三种:函数式定义(无状态组件)function MyComponent(props){  return( <h1>mycomponent</h1> )}es5原生方式 const MyComponent=React.createClass({ rend...

2019-07-25 15:07:00 608

转载 export default与export的区别

1.export default 和export都可以用于导出常量,函数,文件,模块等;2.可以在模块中通过import+(常量 | 函数 | 文件 | 模块)名的方式,将其导入,以便能够对其进行使用3.在一个文件或者模块中,export,import可以有多个,但是export default只能有一个。4.通过export方式导出时要加{},在导入的时候需要加{},e...

2019-06-12 20:10:00 154

转载 vue中的过滤器

过滤器过滤器规则  Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化。过滤器可以用在两个地方: 双花括号插值{{}}和v-bind表达式(后者从 2.1.0+ 开始支持)。过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示:<!-- 在双花括号中 -->{{ name | Up...

2019-06-05 21:29:00 80

转载 js 数组方法大集合,各方法是否改变原有的数组详解

不会改变原来数组的有:concat()---连接两个或更多的数组,并返回结果。every()---检测数组元素的每个元素是否都符合条件。some()---检测数组元素中是否有元素符合指定条件。filter()---检测数组元素,并返回符合条件所有元素的数组。indexOf()---搜索数组中的元素,并返回它所在的位置。join()---把数组的所有元素放入一个...

2019-06-05 18:20:00 84

转载 vue中v-show和v-if的异同

一、官方解释:v-if是“真正”的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。v-if也是惰性的:如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。相比之下,v-show就简单得多——不管初始条件是什么,元素总是会被渲染,并且只是简单地基于 CSS 进行切换。一般来说,v-if有更高的切...

2019-06-05 12:20:00 169

转载 JS中的async/await的执行顺序详解

虽然大家知道async/await,但是很多人对这个方法中内部怎么执行的还不是很了解,本文是我看了一遍技术博客理解 JavaScript 的 async/await(如果对async/await不熟悉可以先看下http://es6.ruanyifeng.com/#docs/async)后拓展了一下,我理了一下await之后js的执行顺序,希望可以给别人解疑答惑,先简单介绍一下async/...

2019-06-04 18:28:00 179

转载 媒体类型和响应式设计

一、媒体类型:常用的三种为:all,print和screen二、媒体类型引用方法:link标签,xml方式,@import和css3新增的@media四种link方法:link方法引入媒体类型其实就是在<link>标签引用样式的时候,通过link标签中的media属性来指定不同的媒体类型。例如:<link rel="styleshee...

2019-05-29 21:23:00 156

转载 css3新增选择器

一、css3之前的选择器ID选择器类选择器包含选择器(E F)伪类选择器(:link,visited,hover,active,focus,first-child)伪元素选择器(::first-line,first-letter,before,after)通配选择器(.)属性选择器(foo[name='martin'])子包含选择器(E>F)...

2019-05-27 21:15:00 176

转载 重学css3(概览)

css3新特性概览:1.强大的选择器2.半透明度效果的实现3.多栏布局4.多背景图5.文字阴影6.开放字体类型7.圆角8.边框图片9.盒子阴影10.媒体查询浏览器内核又可以分成两部分:渲染引擎(layout engineer或者Rendering Engine)和JS引擎。主流浏览器所使用的内核分类          私有属性前缀Tri...

2019-05-27 10:11:00 90

转载 前端安全之XSS和csrf攻击

1.Csrf攻击概念:csrf攻击(Cross-site request forgery):跨站请求伪造;2.Csrf攻击原理:用户是网站A的注册用户,且登录进去,于是网站A就给用户下发cookie。从上图可以看出,要完成一次CSRF攻击,受害者必须满足两个必要的条件:(1)登录受信任网站A,并在本地生成Cookie。(如果用户没有登录网站A,那么网站B在诱导的时候,...

2019-05-24 17:34:00 115

转载 前端面试题1:Object.prototype.toString.call() 、instanceof 以及 Array.isArray()三种方法判别数组的优劣和区别...

1. Object.prototype.toString.call()每一个继承 Object 的对象都有 toString 方法,如果 toString 方法没有重写的话,会返回 [Object type],其中 type 为对象的类型。但当除了 Object 类型的对象外,其他类型直接使用 toString 方法时,会直接返回都是内容的字符串,所以我们需要使用call或者ap...

2019-05-14 15:43:00 400

转载 js中异步方案比较完整版(callback,promise,generator,async)

JS 异步已经告一段落了,这里来一波小总结1. 回调函数(callback)setTimeout(() => { // callback 函数体}, 1000)缺点:回调地狱,不能用 try catch 捕获错误,不能 return回调地狱的根本问题在于:缺乏顺序性: 回调地狱导致的调试困难,和大脑的思维方式不符嵌套函数存在耦合性,...

2019-05-13 21:35:00 256

转载 10分钟搞懂toString和valueOf函数(详细版)

首先要说明的是这两种方法是toPrimitive抽象操作里会经常用到的。默认情况下,执行这个抽象操作时会先执行valueOf方法,如果返回的不是原始值,会继续执行toString方法,如果返回的还不是原始值,那么会报错,如果有指定转换类型时,情况又会有所不同,详细解析请继续往下看。(注意:valueOf和toString方法在Date,array等对象中有些是被重写过的,所以不同...

2019-05-13 21:03:00 417

转载 js类型判别大合集

1.typeofnumber,string,boolean,undefined,symbol,object,function对象中除了函数为function,其他对象都判别为object,缺陷:不能具体判别对象属于哪一类,只是都判别为object,甚至连null都判别为object2.Object.prototype.toString.call()该方法详解:http...

2019-05-10 21:20:00 65

转载 节流函数和防抖函数的注意事项

关于防抖和节流函数的详细分析请看以下两篇文章,此处不再重述,本文章主要讲述运用过程中出现的问题https://www.cnblogs.com/zhouyangla/p/9065554.html防抖函数https://www.cnblogs.com/zhouyangla/p/9096832.html节流函数防抖触发高频事件后n秒内函数只会执行一次,如果n秒内高频...

2019-05-10 15:39:00 186

转载 前端和后端交互的方式

1.前端开发与后台交互的方式(1)form提交 同步请求(2)Ajax提交 异步请求 发送json对象一 、Ajax:异步的javascript和XML主要优点:1.异步请求,不妨碍用户浏览页面或者其他操作。2.局部刷新,无需重新刷新整个页面。缺点:1.back和History,对浏览器机制的破坏。2.安全问题。易受到黑客...

2019-05-08 10:47:00 1039

转载 js中关于假值和空数组的总结

先上x==y运算符的算法细节:如果x不是正常值(比如抛出一个错误),中断执行。如果y不是正常值,中断执行。如果Type(x)与Type(y)相同,执行严格相等运算x === y。如果x是null,y是undefined,返回true。如果x是undefined,y是null,返回true。如果Type(x)是数值,Type(y)是字符串,返回x == ToNu...

2019-04-30 16:00:00 210

转载 LeetCode 367. 有效的完全平方数

给定一个正整数 num,编写一个函数,如果 num 是一个完全平方数,则返回 True,否则返回 False。注意:不要使用任何内置的库函数,如 sqrt。示例 1:输入: 16输出: True示例 2:输入: 14输出: False该题实现起来很简单,数学上有个公式1+3+5+......+(2n-1)=n*n所以直接粗暴...

2019-04-09 10:55:00 91

转载 LeetCode 53题 最大子序和 -- JavaScript

解题思路分析:该题是在一个整数数组中找到一个和最大的连续子数组,并返回和值。那么如何找到一个和最大的连续子数组呢?我们知道,这肯定需要遍历数组才行;好,那我们就开始遍历数组。首先,我们初始化最大和 sum 和当前和 currSum,对于 currSum,如果它小于0,我们就将数组中下一值赋给它;否则就将数组中下一值与其相加。然后,我们取当前 sum 和 currSum 的最大值即可。...

2019-03-07 20:59:00 84

转载 js中读取解析json数据

在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。JSON字符串: 'var str1 = '{ "name": "cxh", "sex": "man" }';JSON对象: var str2 = { "name": "cxh", "sex": "m...

2019-03-06 15:19:00 152

转载 从输入url到页面加载完成发生了什么详解

这是一道经典的面试题,这道题没有一个标准的答案,它涉及很多的知识点,面试官会通过这道题了解你对哪一方面的知识比较擅长,然后继续追问看看你的掌握程度。当然我写的这些也只是我的一些简单的理解,从前端的角度出发,我觉得首先回答必须包括几个基本的点,然后在根据你的理解深入回答。  1、浏览器的地址栏输入URL并按下回车。  2、浏览器查找当前URL是否存在缓存,并比较缓存是否过期。 ...

2019-03-01 15:54:00 74

转载 用border实现三角形的过程

div{ width:100px; height:100px; background:yellow; border-top: 20px solid red; border-right:20px solid black; border-bottom:20px solid green; border-left:20px solid blue;...

2019-02-28 22:00:00 133

转载 python暴力破解wifi密码程序

import time# 破解wifi库import pywififrom pywifi import constclass PoJie(object): def __init__(self, path): # wifi密码字典文件 self.file = open(path, 'r', errors='ign...

2019-02-28 11:10:00 386

转载 JavaScript中的显示原型和隐形原型(理解原型链)

显式原型:prototype隐式原型:__proto__1.显式原型和隐式原型是什么?在js中万物皆对象,方法(Function)是对象,方法的原型(Function.prototype)是对象,对象具有属性(__proto__)称为隐式原型,对象的隐式原型指向构造该对象的构造函数的显式原型。方法(Function)是一个特殊的对象,除了和其他对象一样具有__proto...

2019-02-27 19:26:00 216

转载 行内元素的padding和margin是否无效

html中元素分为三种:块级元素、行内元素(也叫内联元素),内联块级元素。常用块级元素:<div>、<p>、<h1>...<h6>、<ol>、<ul>、<dl>、<table>、<address>、<blockquote> 、<form>块级元素...

2019-02-27 19:23:00 460

转载 Jascript原型链以及Object和Function之间的关系

先看一个简单的function变量function fun1(name) {this.name = name;}console.log("fun1", fun1)从结果可以看到定义一个function,它里边所含有的内容这六个属性是每个function所必有的,直接看第五个prototype(注意prototype是一个对象)就是传说中的...

2019-02-26 17:10:00 149

转载 JavaScript中数据类型和typeof返回的数据类型

除了上图,要注意三点:1、symbol是ES6中新增的数据类型           2.typeof(null)结果是Object               3.typeof(Object)和typeof(Array)的结果是function,因为Object和Array本身就是内置函数。转载于:https://www.cnblogs.com/liutianzeng/p...

2019-02-26 10:10:00 366

转载 var、let、const声明变量的区别

let和var声明变量的区别:1.let所声明的变量只在let命令所在的代码块内有效。(块级作用域)for(let i=0;i<10;i++){// ... }console.log(i);// ReferenceError: i is not defined当前的i只在for循环中有效,当在全局环境中去寻找时是找不到的,所以程序报错var...

2019-02-25 11:14:00 123

转载 关于js作用域问题详解

执行上下文函数表达式和函数声明1.console.log(a); // ReferenceError: a is not defined// ReferenceError(引用错误)对象表明一个不存在的变量被引用。2.console.log(a); // undefinedvar a;3.console.log(a); // undefined...

2018-12-24 11:49:00 101

转载 js中的instanceof运算符

js中的instanceof运算符概述instanceof运算符用来判断一个构造函数的prototype属性所指向的对象是否存在另外一个要检测对象的原型链上语法obj instanceof Object;//true 实例obj在不在Object构造函数中描述instanceof 运算符用来检测 constructor.prototype 是否存在于...

2018-12-17 10:09:00 62

转载 文字搬运工

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>文字搬运工</title> <style> .nav{border: 5px blue solid;float...

2018-11-26 17:14:00 116

转载 关于回顾css发现的一些问题

1、针对于before和after伪元素的用法:<style> .clearfix:before, .clearfix:after{ clear:both; content:""; display:block;}</style><div class="clea...

2018-11-23 13:06:00 67

转载 a标签目标链接问题

1、先确定开始文件和目标文件,例如从css.html开始到body.html2、确定文件寻找路径,因为css.html的父目录是css,而body.html在body目录下,所以需要先退到上一目录head然后再到body目录下寻找body.html代码如下:<a href="../body/body.html">css to body</a> ...

2018-11-19 10:30:00 167

转载 易混淆的table列表和dl表格

dl列表是使用了HTML dl、dt、dd标签的数据列表。首先我们使用dl(definition list-自定义列表)标签来容纳整个数据结构,然后我们使用dt(自定义标题)标签和dd(自定义描述)标签来容纳数据中的标题和内容。Example:<dl> <dt>Name: </dt> <dd>Martin</...

2018-11-12 10:23:00 412

空空如也

空空如也

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

TA关注的人

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