自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ES6的代理与反射

反射ReflectReflect到底是什么? 1.Reflect就是剑js的内置对象,它的主要作用就是提供一些方法,让使用者用这么些方法去访问底层的功能(增删改查) 2.js的底层功能无非就是对对象的的判断增删改查,函数的调用,属性的赋值取值, 3.为什么要使用它,无非就是为了实现函数式编程的思想:减少代码,让代码变得更纯粹,减少符号的使用Reflect.set(target,name,value)给对象的属性赋值const obj = { name : 'jack', age : 18

2020-09-13 21:11:53 221

原创 ES6Promise详细解析

一:Promise出现的原因在说到promise之前不得不提到js中的事件循环,只有了解了事件循环才能去理解promisejs有一个特性那就是单线程,而单线程的优点有:不会有线程的冲突,缺点就是一个字:慢我们如果想要对js进行一个多线程操作该怎么办呢?那当然就是js的异步操作了,异步操作有一个核心的体系,那就是 事件循环1:事件循环(1)js的异步函数:在js中有一些函数他不会立刻去执行,而是在符合了一些条件之后才会去执行,而这类函数我们称为异步函数,例如 : 事件的处理,ajax请求,定时器

2020-09-08 22:10:47 281

原创 ES6函数扩展

收集运算符 …收集运算符可以代替arguments,将传入的实参转换为数组function fun(...arg){ console.log(arg)}fun(1,2,3,5,4,2) //[1, 2, 3, 5, 4, 2]//这是一个真正的数组也就是说可以直接使用数组的方法function fu(...arg){ arg.sort(function(a,b){ return a-b; }) arg.pop(); arg.shift(); return arg

2020-09-01 20:39:41 275

原创 ES6数组扩充

Array.from()Array.from方法用于将两类对象转为真正的数组//下面是一个类数组对象const obj = { '0': 'a', '1': 'b', '2': 'c', length: 3}//ES5的写法:const arr1 = [].slice.call(obj); // ['a', 'b', 'c']//ES6const arr2 = Array.from(obj); // ['a', 'b', 'c']//他还可以把字符串也装

2020-09-01 19:59:15 254

原创 ajax面试题

原生js,ajax请求的步骤://1.创建var xhr; if (window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ //兼容低版本IE xhr = new ActiveXObject("Microsoft.XMLHTTP"); }//2.函数监听xhr.onreadystatechange = function(){ if(xhr.readyState == 4){ if(xhr.status ==

2020-08-18 20:19:06 231

原创 jQuery制作弹幕

<style> *{ margin: 0; padding: 0; } html,body{ width: 100%; height: 100%; } .box{ width: 80%; height: 80%; border: 1px solid black; ..

2020-08-03 20:24:38 549

原创 jQuery 使用方法

jQuery简单来说就是 JavaScript库,封装了一堆的js函数(JS库)在jQuery的官网logo中有这么一段话write less, do more。人狠话不多(哈哈哈)jQuery的优势1.完全不需要再去使用原生的DOM操作了2.非常多的重用函数,简化JavaScript开发3.兼容性问题 1.x.x 2.x.x 3.x.x 2和3的版本已经放弃老版本IE(IE9及以下)而jQuery的引用就很简单了可以去官网下载jQuery的包导入就可以使用了或者导入在

2020-07-29 19:27:16 226

原创 如何使用纯css写简单轮播图

首先将图片并排放入盒子中隐藏之后<style> .box{ width: 100px; height: 100px; overflow: hidden; position: relative;} .imgs{ //容器盒子 width: 500px; position: absolute; animation: oy 10s ease-out infinite alternate } img{ width: 100px; height: 1

2020-07-26 22:40:14 181

原创 Canvas做简易的飞机大战

//首先创建canvas<canvas id="canvas" width="480px" height="650px"></canvas>根据游戏的特性我们将游戏分为5个阶段 利用构造函数进行编辑,首先需要定义五个阶段的常量var canvas = document.getElementById("canvas"); var context = canvas.getContext("2d"); // 0 游戏初始化 // 0.1 定义将游戏划分为的5个阶段常量 co

2020-07-21 19:02:46 423

原创 js中this指向

一、全局作用域或者纯函数中this指向全局对象window。function fun () { console.log(this)//指向window } fun() //function声明函数赋给变量var fun1 = function () { console.log(this)//指向window } fun1() (function () {//立即执行函数 console.log(this)//指向window })(); 1二、作为对象属性被调用

2020-07-20 11:31:29 186

原创 Canvas绘制大时钟

创建canvas标签<canvas width="500" height="500" class="canvas"></canvas> 绘制圆刻度和时间arc(x, y, r, start, stop)x, y, r : 分别是圆的圆心坐标和半径。start:起始角,以弧度计stop : 结束角, 以弧度计角度和弧度的关系式:指针的角度 * Math.PI / 180 = 弧度。时钟一圈分为12个小时,60分钟,60秒。所以30°一小时,6°一分钟, 6°一秒。理

2020-07-14 19:17:37 299

原创 js的异步加载和时间线

JS时间线1、创建document对象,开始解析页面。创建HTMLHtmlElement对象,添加到document中。此时,document.readyState = ‘loading’,准备进入加载阶段。2、遇到link外部css,创建线程加载,并继续解析文档。并发;3、遇到script外部js,并设置有async、defer属性。创建线程加载,并继续解析文档。这里,实际上是通过 document.createElement(‘script’) 方式动态插入script元素,来模拟async属性(

2020-07-12 18:57:43 205

原创 关于JS预编译

在JS中预编译就是发生在函数执行之前发生的事情。上代码: var x = 1, y = z = 0; function add(n) { return n = n+1;   } y = add(x); function add(n) { return n = n + 3; } z = add(x); console.log(x,y,z) 这是一段全局预编译的面试题接下来我们一步一步的分析;第一步

2020-07-06 19:19:20 258

原创 animation动画

定义animation是一个复合属性,包括animation-name、animation-duration、animation-timing-function、animation-delay、animation-iteration-count、animation-direction、animation-play-state、animation-fill-mode共8个子属性animatio...

2020-04-26 22:29:17 264

原创 flex弹性布局

一,基本概念flex布局:通过给父盒子添加flex属性, 来控制子盒子的位置和排列方式display: flex inline-flex传统布局:兼容性好,布局繁琐,局限性,不能在移动端很好的布局flex弹性布局:操作方便,布局极为简单,移动端应用广泛,PC端浏览器支持情况较差,IE 11或更低版本,不支持或部分支持建议:PC端页面布局----传统布局移动端或者不考虑兼容性问题的PC端...

2020-04-26 22:15:18 169

原创 css3属性

1 border-radius 圆角div{ width: 400px; height: 400px; background-color: #f15c40; float: left; margin-left: 20px; margin-top: 20px; } .div0{ border-radius: 5px; } .div1{ ...

2020-04-20 14:55:55 236

原创 css3选择器

一:属性选择器选择器功能描述a[attribute]选取带有指定属性的元素a[attribute=value]选取带有指定属性和值的元素a[attr^=“val”]匹配属性attr的值以指定值"val"开头的每个元素a[attr$=“val”]匹配属性attr的值以指定值"val"结尾的元素a[attr*=“val”]匹配属性attr的值包含...

2020-04-20 04:11:21 233

原创 HTML5新增的标签属性

表单标签描述email提交时会校验内容是否是正确的邮箱格式url在提交表单时,会自动验证 url 域的值。numbernumber 类型用于应该包含数值的输入域。还能设置输入数字的范围rangerange 类型用于应该包含一定范围内数字值的输入域。range 类型显示为滑动条。还能够设定数字的限定value number规定默认值Poi...

2020-04-15 02:46:42 212

原创 ES6语法

1.ES5和ES6声明变量的方式对比ES5中声明变量的方式://1.通过var声明var a = '';//2.函数方式声明function fn(a){ return a; }fn(10);ES6中声明变量的方式://1.使用let声明let a = 10;//2.使用const声明const name = "刘能";2. var ,let , const 的区别...

2020-03-30 13:35:01 202

原创 js原型与原型链

什么是原型(1)原型就是一个属性,这个属性是构造函数的属性,构造函数是用来制造用来出对象的,是构造函数制造出来的公共祖先,后面所有的对象都会继承原型的属性与方法(原型也是个对象)(2)__proto__这个是用来查看原型的,这个是对象的属性,这个属性可以查看但是不能修改(隐式属性)(3)prototype 设置原型,这个是构造函数的属性(4).原型对象默认拥有一个 constructor ...

2020-02-14 14:11:01 257

原创 关于js函数面试题

x = 1;var obj = { x: 2, dbl: function () { this.x *= 2; x *= 2; console.log(x); console.log(this.x); }};// 说出下面的输出结果obj.dbl();//解析:this.x指向当前对象,所以this....

2020-02-13 14:24:35 534

原创 JavaScriptDOM树

DOM树原型图为DOMDOM分为核心的DOM和HTML DOM 核心DOM:能操作所有结构文档;HTML DOM 是常用的API 操作HTML内容常用的节点APIp.parentNode 获得p的父节点p.previousSibling 返回当前节点的前一个兄弟节点p.nextSibling 返回当前节点的下一个兄弟节点p.previousElementS...

2020-01-06 00:23:42 167

原创 JavaScript作用域

JavaScrip作用域的概念作用域是可访问的变量的集合。在JavaScript中,作用域为可访问变量,对象,函数的集合,它分为局部作用域和全局作用域。局部作用域:变量在函数内部声明为局部作用域,局部变量只作用于函数内,不同的函数可以使用相同名称的变量,它只能在函数内部访问。局部变量在函数开始执行时创建,函数执行完成后局部变量会自动销毁。全局作用域:变量在函数外定义为全局变量,网页中的所有脚...

2019-12-23 20:31:45 157

原创 正则实现找出字符串重复最多项并打印次数

在一个面试题中有一个找出字符串重复最多项并打印次数如:一个字符串“aaaaabbbbbcccccdddddaaaa”找出重复次数最多的项并打印重复次数这道题目可以使用多种方法去解决,我为大家带来的使用正则的办法来实现代码如下:var str = 'aaaaaaabbcccdddddffffffff'; var jso = [];//创建一个空数组 str.replace(/\...

2019-12-21 13:57:28 495

原创 JavaScript正则表达式

概念:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。简介:正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用...

2019-12-17 20:27:53 334

原创 js数组

数组:一组有序的数据数组的作用:可以一次性存储多个数据js中创建数组的方法有: (一)使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组 var arr2 = new Array(10); // 创建一个包含10项的数组 var arr3 = new Array(“a”,“b”,“c”); // 创建一个包含3个字符串...

2019-12-15 16:32:47 137

原创 JS循环

循环的步骤分为: 1、声明循环变量;   2、判断循环条件;  3、执行循环体操作;  4、更新循环变量;  5、然后循环执行2-4,直到条件不成立,跳出循环。 在JS中有很多种循环方法而我们最常用的4中方法为: 1.while循环 ![在这里插入图片描述](https://img-blog.csdnimg.cn/201...

2019-12-15 16:09:20 220

原创 JavaScropt引擎

历史发展: 在2008年到2009年的第二次浏览器大战之前,JavaScript引擎(JavaScript engine)仅简单地被当作能阅读执行JavaScript源代码的解释器。第一款JavaScript引擎由布兰登·艾克在网景公司开发,用于Netscape Navigator网页浏览器中。引擎的名字叫做SpiderMonkey,由C实现。它自JavaScript 1.5升级以符合ECMA...

2019-12-08 14:54:49 269

原创 JavaScropt数据类型和数据类型转换

JavaScropt数据类型分为两大类型: 1.原始类型(基本类型):按值访问,可以操作保存在变量中实际的值。原始类型汇总中null和undefined比较特殊。 2.引用类型:引用类型的值是保存在内存中的对象。 基本类型为: 1.Undefined 类型:是全局对象window的一个特殊属性,顾名思义就是未定义的意思;Undefined类型只有一个值Undefined,表示一...

2019-12-08 14:40:51 193

原创 JavaScropt简介

JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名的,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。JavaScript在1995年由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设...

2019-12-08 14:19:25 891

原创 5大浏览器

浏览器内核简要说明:一个完整的浏览器包含浏览器内核和浏览器的外壳。浏览器内核又可以分为两部分:渲染引擎和JS引擎。由于JS引擎越来越独立,内核就倾向于只指渲染引擎。浏览器构成浏览器一般由七个模块组成,User Interface(用户界面)、Browser engine(浏览器引擎)、Rendering engine(渲染引擎)、Networking(网络)、JavaScript Inter...

2019-12-08 14:06:39 242

原创 HTML标签

超文本标记语言(外国语简称:HTML)标记标签通常被称为HTML标签,HTML标签是HTML语言中最基本的单位,HTML标签是HTML(标准通用标记语言下的一个应用)最重要的组成部分。HTML标签的大小写无关的,例如“主体”< body>跟< BODY >表示的意思是一样的,不过推荐使用小写。而HTML标签的特点则有:由尖括号包围的关键词,比如 < html &...

2019-12-08 13:58:14 147

原创 HTML简介

HTML称为超文本标记语言,是一种标识性的语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。超文本是一种组织信息的方式,它通过超级链接方法将文本中的文字、图表与其他信息媒体相关联。这些相互关联的信息媒体可能在同一文本中,也可能是其他...

2019-12-08 13:49:07 268

原创 更改input上传框的样式

在写input的file样式的时候一般默认的样式谷歌和欧朋登浏览器的样子为![在这里插入图片描述](https://img-blog.csdnimg.cn/20191124233402706.png) 而IE浏览器的默认样式为![在这里插入图片描述](https://img-blog.csdnimg.cn/20191124233451685.png) 这些默认样式是无法直接设置其他的样...

2019-11-24 23:52:41 562

原创 HTML+CSS书写注意事项

HTML+CSS书写注意: 1,指定标题,搜索引擎对标题中的内容有偏爱 2,标签语义化 3,减少div和span标签的使用次数 4,排版布局要从上到下从左到右 5,静态网站制作一般分为 index.html 首页、 index.css 首页样式 、public.css 公共样式 、 reset.css 重置样式等。 6,分析页面内容,注重骨干部分标签的使用...

2019-11-21 22:44:22 368 1

空空如也

空空如也

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

TA关注的人

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