自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 浏览器加载

浏览器加载 1、时间线(总结) 当执行问件时,会先形成DOM树 当遇到link、img、带有defer和async的script标签时,会创建新的线程去执行,其中img在主线程解析标签,在异步线程解析图片 当遇到不带有defer、async的script标签时,线程会阻塞,知道js解析完成后,再执行下面的文件(这就是script标签放在文档下面执行的原因) 当dom树形成后会触发DomContentLoad事件 当异步线程的事件执行完后,会触发Load事件 2、浏览器的加载过程 执行顺序是:主队列、微

2021-04-17 14:03:55 149

原创 解决跨域的方式

跨域 对于跨域,我们学前端的再熟悉不过了,那么如何解决跨域问题呢,接下来有几个方法域之间进行相互资源请求; 跨域是什么 1、进行不同的域名下的资源调用。 例如:localhost:12306/index.html请求 localhost:3000/index.html请求 为什么出现跨域 1、浏览器在解析JavaScript出于安全方面的考虑,只允许在同域名下页面进行相互资源请求调用,不允许调用其他域名下的页面的对象;简单的理解就是因为JavaScript同源策略的限制。 什么是同源呢 浏览器同源策略:

2021-04-11 23:35:56 120

原创 js异步加载

js异步加载的三种方案 默认情况javascript是同步加载的,如果javascript加载时阻塞,后面的元素就需要等待javascript加载完毕后才能进行再加载,当遇到这个问题时怎么解决呢,接下来介绍三种方法来解决此类问题。 (1)defer属性 defer 属性规定是否对脚本执行进行延迟,直到页面加载为止。 defer是一种属性,他的属性值就只有defer一个 但是defer属性添加得分情况而定 1、有的js代码会直接改变文档的内如(例如:document.write) 2、不会改变文档内如的则可

2021-04-05 18:12:34 148

原创 前后端交互(url输入地址栏后的过程+get和post的区别)

输入地址栏后经历的过程 1、当地址输入ul地址栏时经历的过程 浏览器根据 DNS 服务器解析得到域名的 IP 地址 向这个 IP 的机器发送 HTTP 请求 服务器收到、处理并返回 HTTP 请求 浏览器得到返回内容 浏览器对其进行渲染 渲染过程 根据 HTML 结构生成 DOM 树 根据 CSS 生成 CSSOM 将 DOM 和 CSSOM 整合形成 RenderTree 根据 RenderTree 开始渲染和展示 遇到script标签时,会执行并阻塞渲染 2、url地址是谁来写的呢 在开发中,ur

2021-03-28 20:43:28 1907

原创 深拷贝与浅拷贝

深拷贝与浅拷贝的区别 一、数据类型 数据类型分为两大类,基本数据类型和应用数据类型 1、基本数据类型有:string number boolean null undefined 2、应用数据类型有:object array 数据类型分成两大类的原因 基本数据类型里面的值直接存在栈中 引用数据类型是地址存在栈中,但是数据存在堆中 应用数据类型的存储特点如下: 浅拷贝的实现 var obj = { "name": "zs", "age": 18 } var obj1 = obj obj1.na

2021-03-21 15:50:10 58

原创 闭包函数的特点来由

一、预编译 (1) js的执行顺序是从上往下依次执行(主线程),到遇到异步时另开一个空间 (2.1) 产生GO对象 运行script标签中的代码,运行前的一瞬间产生,产生GO对象 var声明的变量名作为对象的属性名,属性值为undefined 函数声明作为GO对象的属性名,值为函数体,如果GO对象有相同的属性名,直接覆盖 (2.2)产生AO对象 预编译指的是 函数在运行前的一瞬间会产生AO对象 函数的形参会作为AO对象的属性名,实参作为AO对象的属性值 var声明作为AO对象的属性名,值为un

2021-03-20 14:34:44 145

原创 js构造函数的创建和作用

构造函数的创建 一、object对象 object对象创建的三种方式 1、利用字面量创建 var obj={} 2、利用new Object创建 var obj=new object() 2、通过构造函数创建 function Object(){ } var obj=new Object() 注意:构造函数的方式是 function 构造函数名(){ this.属性=值; this.方法=function(){ }

2021-01-11 19:07:25 1131

原创 简单方法实现数组去重+放大镜

数组去重 1、运用到.indexof方法 2、创建新数组,将筛选出来的数组添加到新数组中可用.push()方法 <script> var arr=['a','b','b','c'] var newArr=[] for(i=0;i<arr.length;i++){ if(newArr.indexOf(arr[i])==-1){ newArr.push(arr[i])

2020-12-14 20:23:51 96 1

原创 js之dom

1、什么是dom DOM是文档对象模型(Document Object Model)的缩写。 是 W3C(万维网联盟)的标准。是一种用于HTML和XML文档的编程接口。它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式。 HTML DOM 节点 在 HTML DOM 中,所有事物都是节点。DOM 是被视为节点树的 HTML。通过 HTML DOM,树中的所有节点均可通过 JavaScript 进行访问。所有 HTML 元素(节点)均可被修改,也可以创建或删除节点。 查找元素的方法 通过

2020-12-12 14:56:35 68

原创 常用的方法+new关键字的作用+容易忽视的问题

数组 1、创建数组的方法 new arr=[] new arr = new arr()

2020-12-08 20:53:15 83

原创 string伪数组中常用的实例方法

string中的实例方法 length: 字符串长度 只能读取不能修改 charAt 方法从一个字符串中返回指定的字符。 语法: str.charAt(index) index一个介于0 和字符串长度减1之间的整数。 (0~length-1) 如果没有提供索引,charAt() 将使用0。 var anyString = "Brave new world"; console.log("The character at index 0 is '" + anyString.charAt(0)

2020-12-05 13:49:10 93

原创 js运行步骤+变量声明

js运行步骤 语法分析 预编译 函数的预编译 发生在:函数执行的前一刻 预编译的步骤 执行期上下文 Activation Object(AO、作用域) 理解: fnAo {} 找形参和变量声明,将形参和变量作为AO对象属性名,值设置为undefined,如果有重名覆盖而不新增 将实参和形参统一 在函数中找函数声明(函数直接量),将函数名做为AO对象的属性名,函数体做为该属性的属性值,如果有重名覆盖而不新增 <script> function fn(a

2020-12-05 11:02:59 102

原创 js中this关键字的用法+函数的构造方法

this关键字 注意:this无法赋值 1、在全局作用域中,this关键字固定指向全局对象 2. 在函数作用域中,取决于函数是如何被调用的 函数直接调用(通过window调用),this指向全局对象 通过一个对象的属性调用,格式对象.属性名()或 对象['属 性'](),this指向该对象 <script> var name = '23' var obj={ name:'20', fn: function(){

2020-11-29 16:56:19 286

原创 js中容易出错的问题

判断数据类型 1、运用typeof()函数 typeof()返回类型如下 1、number型 console.log(typeof(NaN)); // “number” 2、string型 var a = “123abc”; console.log(typeof(a + “”))//“string” 3、boolean型 console.log(typeof(!!a)); //boolean ** boolean型 在判断语句中(任何表达式的返回结果都是boolean型) 4、undefined型 co

2020-11-29 16:08:08 164

原创 js的发展史+常用浏览器

js的发展史 JavaScript与Java的关系 ​ JavaScript的基础语法和对象体系,是模仿Java而设计的。 ​ JavaScript语言的函数是一种独立的数据类型以及基于原型对象的继承链,是与java语法最大的两点区别。 JavaScript不需要编译,由解释器直接执行。 JavaScript与ECMA的关系 ​ 1996年,微软模仿JavaScript开发了一门相近的语言JScript,内置于IE3.0,Netscape公司面临丧失浏览器脚本语言的主导权局面。胳膊拗不过大腿,Net

2020-11-22 19:23:33 168

原创 菜鸟教程:Js数据类型

js简介 一、动态类型 JavaScript 是一种弱类型或者说动态语言。这意味着你不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。这也意味着你可以使用同一个变量保存不同类型的数据: var a = 42; // a is a Number now a = "bae"; // a is a String now a = true; // a is a Boolean now 二、数据类型 number型 字符串型 null型 Null 类型只有一个值: null,更多详情可查看

2020-11-22 19:08:47 160

原创 菜鸟教程:HTML中清除浮动+盒子的分类+语义化

消除浮动的方法 一、在父元素中加 overflow:hidden 不能与position配合使用 .father{ overflow:hidden } 二、设置j具体宽高 只适合高度固定的固定的布局,给出精确的布局,如果高度和父级的高度不一样,也会产生问题 .children{ float:left; width:800px; height:100px } 三、clear清楚浮动 虽然代码多 但是这种方法清

2020-11-15 11:29:32 343

原创 HTML中隐藏元素的方式+固定定位居中的方式

##HTML隐藏元素的方式## 一、display display:none最常用隐藏元素的方法 dislay:none 隐藏元素后,会使元素在页面上消失,元素本该占有的空间 会被其他元素占有。 下面是display:none 在二级菜单中的用法 <ul> <li class="serverse"><a href="">客户服务</a> <div class="

2020-11-14 21:22:11 221

原创 HTML中重要的盒子模型

div盒子 一、盒子的组成 1、div盒子是由内边距+边框+外边距(不能只是觉得盒子就是边框围起来的 ,这是一个误区) 2、div盒子的简易模型(如图) <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> &l

2020-11-08 14:18:56 166

原创 html中样式层叠的解决方法

Html选择器 一、选择器的分类 1、id选择器 注意id选择器在样式表中的用法 :#id属性值{ } id是唯一的,一般js中用id比较多,但对于html初学者可以先用着,但是主要用类选择器 <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <ti

2020-11-05 20:30:55 1135

空空如也

空空如也

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

TA关注的人

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