自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue2数据双向绑定原理

对于vue2数据双向绑定原理的理解

2023-02-09 13:48:04 493

原创 new操作符具体干了什么?

对于构造函数创建实例时,使用的new操作符具体步骤

2023-02-08 23:13:33 200

原创 行内元素间的缝隙问题?

解决行内元素的缝隙问题

2022-06-08 20:04:06 179

原创 子元素的margin-top为什么会影响父元素

子元素的margin-top影响父元素的原因及解决方案

2022-06-08 19:58:35 1646

原创 对于行内元素来说,margin的上下左右生效问题?

行内元素的上下边距生效问题

2022-06-08 19:51:50 504

原创 闭包

闭包1、什么是闭包:闭包就是能够读取其他函数内部变量的函数;例如在javascript中,只有函数内部的子函数才能读取局部变量,所以闭包可以理解成“定义在一个函数内部的函数“;2、为什么需要闭包:这是因为js中的作用域,使得函数内部可以直接访问全局变量(即向上查找作用域链),函数外部不能访问函数内部的局部变量,但是有时候我们会需要使用函数内部的局部变量,这就产生了闭包;3、闭包的作用:(1)可以读取函数内部的变量,保护函数内的变量安全;(因为只有嵌套函数才能访问外层函数内的局部变量,而无法通过其他途

2021-05-09 10:18:43 480

原创 函数进阶

函数进阶1、函数:一段js代码,只定义一次,但可被执行或调用任意次;(1)js函数是参数化的:函数定义时会包含一个形参,是局部变量;(2)函数调用会为形参提供实参的值;(3)函数使用实参的值来计算返回值,成为该函数调用表达式的值;(4)除实参外,每次调用还会拥有另一个值(本次调用的上下文),这就是this关键字的值;(5)函数如果挂载在一个对象上,作为对象的属性,称它为对象的方法,当通过这个对象来调用函数时,该对象就是此次调用的上下文,也就是该函数的this值;(6)用于初始化一个新创建的对象

2021-04-18 22:34:44 110

原创 数组进阶

数组进阶1、数组:是值的有序集合,通过索引引用数组元素,数组里的元素可以是任意类型;【注】稀疏数组的元素会有空位,即元素为empty;2、读写数组元素:[ ]里面可以是非负整数值的任意表达式,则会先转换成数值型,作为数组元素,若不行,则是作为数组对象的属性;3、稀疏数组:包含从0开始的不连续索引的数组;可以用Array()构造函数或简单地指定数组的索引值大于当前的数组长度来创建稀疏数组;(1)循环时,希望跳过空位,就用for…in(2)循环时,希望不跳过空位,就用for…of4、数组长度:每

2021-04-18 22:21:02 232 1

原创 DOM操作

DOM操作:1、DOM:文档对象模型,是HTML和XML文档的编程接口;,DOM是web页面的完全的面向对象表述,提供了对web页面的存储和操作的方式,能够使用如js等脚本语言进行修改;2、重要的数据类型:3、HTML DOM:定义了所有HTML元素的对象和属性,以及访问他们的方法,即HTML DOM是关于如何获取、修改、添加或删除HTMLHTML元素的标准;4、DOM节点:在HTML DOM中,所有事物都是节点,DOM是被视为节点树的HTML;通过HTML DOM,树中的所有节点均可通过Jav

2021-04-18 21:59:09 214

原创 js对象的特征

js对象的特征(1)属性的分类:自有属性(own property)、继承属性(inherited property);【注】一个名值对用‘,’来分隔;2、原型:每一个js对象(null除外:空引用)都和另一个对象相关联,另一个对象就是原型对象,每一个对象都从原型继承属性;【注】(1)可以通过对象.constructor来得到对象的构造函数的类型;(2)字面量创建的对象相当于new Object()创建出来的;3、原型链(prototype chain):所有内置构造函数都具有一个继承自Ob

2021-04-18 21:49:41 595 1

原创 正则表达式

正则表达式1、创建正则表达式对象:使用RegExp对象来封装一个正则表达式,并提供相关的方法和属性;创建方法有两种:(1)字面量:(2)构造函数:2、修饰符:(1)g:global,全文搜索,若不添加,则搜索到第一个就停止;(2)i:不区分大小写;(3)m:multiple lines,多行搜索;3、元字符:(1)原义文本字符:如a,abc;(2)元字符:有特殊意义的非字母类型,如* + ? $ ^ |等;4、字符类:当需要匹配一类字符时,可以用**[ ]**来构造一个简单的类,

2021-04-18 21:25:21 71

原创 ES6字符串扩展:

ES6字符串扩展1、字符串新增特性:Unicode表示法、遍历接口、模板字符串、新增方法(10种);2、charPointAt (取码值):ES6中的charPointAt(0)会处理4个字节,而charPointAt(1)会处理4个字节中的后2个字节;ES5中的charCodeAt()一次只处理两个字节;3、ES5中的fromCharCode(),ES6的fromCharPoint()唯一的区别是:能不能处理Unicode的字符;4、includes():判断字符串中是否包含某一字符(串);5、

2021-04-13 23:04:04 218

原创 BigInt

BigInt1、BigInt:它的目的是比Number数据类型支持的范围更大的整数值(表示大于2^53-1的整数)。在对大整数执行数学运算时,以任意精度表示整数的能力尤为重要,使用BigInt整数溢出将不再是问题;2、描述方式:在一个整数字面量后面加n的方式定义一个BigInt,如10n,或者调用函数BigInt();3、与Number的不同点:(1)不能用Math对象中的方法;(2)不能和任何Number实例混合运算,两者必须转换成同一种类型,在两种类型来回转换时要小心,因为BigInt变量在转

2021-04-13 22:54:01 3507

原创 原始值与引用值、基本包装类型:

原始值与引用值、基本包装类型:1、原始值(栈):表示单一的数据,ES设计了6种原始值,undefined、null、boolean、number、string和symbol(做标识),保存原始值的变量是按值访问,即存储在内存中的是实际值;2、引用值(堆):复合数据(有多个值(原始值或其他引用值)构成的对象),变量里面保存的是引用;3、动态属性:(1)原始值本身不能被修改,原始值不能有属性;(2)对象是可以随时添加、修改和删除属性和方法的;4、值传递:原始值和引用值传递本质上没有区别,都是将一个变

2021-04-13 22:39:57 149

原创 解构赋值

解构赋值1、解构赋值:是对赋值运算符的扩展,把对象或数组的属性或值提取出来,进行赋值给变量;在解构中,解构的源:解构赋值表达式右边部分;解构的目标:解构赋值表达式左边部分;好处:让语法更加简洁优雅;2、解构赋值的分类:(1)数组解构赋值(2)对象解构赋值(3)字符串解构赋值(4)布尔值解构赋值(5)函数参数解构赋值(7)数值解构赋值3、解构赋值使用场景:(1)变量交换(2)直接返回函数return有多个值的内容(3)可以选择赋值(4)取出第一个赋值,剩余的赋值为数组(5)提取对象

2021-04-13 22:00:10 10997

原创 let、const、以及作用域

let(与var区别)1、var声明变量不支持块级作用域;2、let声明的变量仅在其代码块里有效,支持块级作用域;3、var:i=10;let的i会报错(for循环会形成一个大的代码块,for以外的i就访问不到了);4、for循环在设置循环变量的部分是一个父作用域,循环体内部又是一个独立的子作用域。5、变量提升:预编译把所有变量提取到最顶端进行声明,但未初始化,返回undefined;6、暂时性死区(使用let命令声明变量之前,该变量都是不可用,这个区域被称为暂时性死区):使用let时,必须是先

2021-04-13 21:41:20 1669

空空如也

空空如也

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

TA关注的人

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