自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【ECMAScript 6入门】Generator

yield 1yield 2yield 3return 4比普通函数多一个函数内部用yield来控制程序的执行的「暂停」函数的返回值通过调用next()来「恢复」程序执行Generator 函数的定义不能使用箭头函数,否则会触发 SyntaxError 错误。

2023-12-06 09:57:58 55

原创 【ECMAScript 6入门】Class

虽然 ES6 在类的定义上仅是 ES5 定义类的语法糖,但是从开发者的角度而言,开发更有效率了,代码可阅读性大大提升。

2023-11-28 18:11:09 25

原创 【ECMAScript 6入门】Symbol

ES6 引入了一种新的原始数据类型Symbol,表示独一无二的值。Symbol 值通过 Symbol 函数生成。这就是说,对象的属性名现在可以有两种类型,一种是原来就有的字符串,另一种就是新增的 Symbol 类型。凡是属性名属于 Symbol 类型,就都是独一无二的,可以保证不会与其他属性名产生冲突。

2023-11-28 14:41:31 26

原创 【ECMAScript 6入门】Set

ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。

2023-11-28 10:22:26 20

原创 【ECMAScript 6入门】Map

ES6 提供了 Map 数据结构。它类似于对象,也是键值对的集合,但是「键」的范围不限于字符串,各种类型的值(包括对象)都可以当作键。也就是说,Object 结构提供了「字符串—值」的对应,Map 结构提供了「值—值」的对应,是一种更完善的 Hash 结构实现。如果你需要「键值对」的数据结构,Map 比 Object 更合适。

2023-11-27 17:20:08 23

原创 【ECMAScript 6入门】 Function 扩展

所在的。

2023-11-27 17:18:50 12

原创 【ECMAScript 6入门】Number

ES6 提供了二进制和八进制数值的新的写法,分别用前缀0b(或0B)和0o(或0O)表示。

2023-11-25 13:00:00 10

原创 【ECMAScript 6入门】Object 扩展

在 ES6 之前 Object 的属性必须是 key-value 形式。在 ES6 之后是可以用简写的形式来表达。

2023-11-25 09:45:00 15

原创 【ECMAScript 6入门】let 和 const

这两个关键字是 ES6 新增的声明变量方式,与varvarletconst。

2023-11-24 19:15:00 13

原创 【ECMAScript 6入门】解构赋值

将值从数组中取出,赋值给其他变量。这是一个拷贝过程,原数组和元素本身不会被改变。

2023-11-24 14:54:10 167 1

原创 【ECMAScript 6入门】Array

用于将类数组的对象(array-like object)和可遍历的对象(包括 ES6 新增的数据结构 Set 和 Map),转为真正的数组。在当前数组内部,将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组。返回数组中满足 func 函数内条件的第一个元素的索引。为数组里的每个元素执行 func 函数,返回函数累计处理的结果。返回数组中满足 func 函数内条件的第一个元素,否则返回。返回新的数组,每个元素为调用 func 的结果。返回符合 func 条件的元素数组。

2023-11-24 14:52:45 416 1

原创 【JavaScript基础】 继承的八种方式

在编写代码时,有些对象会有方法(函数),如果把这些方法都放在构造函数中声明就会导致内存的浪费。如下,通过调用构造函数的方式来创建对象,Person是p1p2的构造函数。所有的Person对象都有say方法,并且功能相似,但是他们占据了不同的内存,会导致内存浪费(内存泄露)。console.log("你好");// false于是,我们就需要用到继承。通过某种方式让一个对象可以访问到另一个对象中的属性和方法,我们把这种方式称之为继承。原型链继承借用构造函数继承组合模式继承。

2023-11-23 16:21:02 170

原创 【css基础】BFC

在普通流中,元素按照其在 HTML 中的先后位置至上而下布局,在这个过程中,行内元素水平排列,直到当行被占满然后换行,块级元素则会被渲染为完整的一个新行,除非另外指定,否则所有元素默认都是普通流定位,也可以说,普通流中元素的位置由该元素在 HTML 文档中的位置决定。具有 BFC 特性的元素可以看作是一个隔离的独立容器,容器里面的元素不会在布局上影响到外面的元素,并且 BFC 具有普通容器所没有的一些特性。如果使容器触发 BFC,那么容器将会包裹住浮动元素,在计算 BFC 的高度时,浮动元素也参与计算。

2023-11-23 15:17:44 80

原创 【css基础】长度和单位

rem 是 CSS3 新增的一个相对单位,rem 是相对于根元素 html 的字体大小(font-size)来计算的长度单位。如果你没有设置 html 的字体大小,就会以浏览器默认字体大小(16px)为基准,即 1rem = 16px。但如果此时将 rem 与 px 进行换算很麻烦,比如 0.75rem = 12px。为了更方便的进行换算(比如1:10),在做移动端页面时,业内流行用 62.5% 来初始化(16px * 62.5% = 10px)。

2023-11-22 16:00:00 110

原创 【css基础】选择器与样式优先级

就算只用一个 ID 时也会大幅提升优先级,当需要覆盖这个选择器时,通常找不到另一个更有意义的 ID,于是就会复制原来的选择器,然后加上另一个类。如果两个声明的来源和优先级相同,那么后出现的样式(在样式表中出现较晚,或者位于页面较晚引入的样式表中)会覆盖先出现的样式。正确的做法是在包里包含一个样式表,这样用户就可以在使用这份样式表的同时,在不引入优先级竞赛的前提下,自定义其中的样式。子选择符的写法是在两个选择符之间添加大于号,与后代选择符不同,它只选择一个元素的直接后代,也就是子元素。important。

2023-11-22 11:41:02 108

原创 【css基础】伪元素和伪类

有时候我们想选择的页面区域不是通过元素来表示的(比如想选择一段话的第一个字),而我们也不想为此给页面添加额外的标记。有时候,我们想基于文档结构以外的情形来为页面添加样式,比如基于超链接或表单元素的状态。,它匹配的元素有一个 ID 属性,而且该属性的值出现在当前页面 URL 末尾的井号(#)后边。,专门用于排除某些选择符,可以配合各种放到括号中的选择符使用,不过伪元素和它自身除外。伪类选择符的语法是以有一个冒号开头,用于选择元素的特定状态或关系。就是页面锚点跳转后,给当前选中的元素增加样式。

2023-11-21 17:57:52 17

原创 【css基础】盒模型

盒模型是 CSS 的核心概念,描述了元素如何显示,以及元素之间如何相互作用、相互影响。

2023-11-21 17:56:58 141

原创 【css基础】定位(position)

static(静态定位)对象遵循标准文档流,top,right,bottom,left 等属性失效。relative(相对定位)对象遵循标准文档流,使用 top,right,bottom,left 等属性相对于该对象在标准文档流中的位置进行偏移(相对于元素的正常位置进行定位),同时可通过 z-index 定义层叠关系。absolute(绝对定位)对象脱离标准文档流,使用 top,right,bottom,left 等属性进行绝对定位(相对于 static 定位以外的第一个父元素进行绝对定位。

2023-11-21 17:38:00 105

原创 【css基础】CSS 引入方式

使用 @import 引用的 CSS 文件只有在引用它的那个 css 文件被下载、解析之后,浏览器才会知道还有另外一个 css 需要下载,这时才去下载,然后下载后开始解析、构建 render tree 等一系列操作。在 IE 中,@import 会引发资源文件的下载顺序被打乱,即排列在 @import 后面的 js 文件先于 @import下 载,并且打乱甚至破坏 @import 自身的并行下载。注意:网上常说的「link 引入的样式权重大于 @import 引入的样式权重」是不太合理的。

2023-11-17 17:05:59 226

原创 【JavaScript】数组遍历的几种方式

说了这么多,那这些遍历方法, 在性能上有什么差异呢?我们在 Chrome 浏览器中尝试。我采用每个循环执行 10 次,去除最大、最小值,取平均数,降低误差。index++) {从打印结果可以看出,原生for循环的速度最快,循环最慢。

2023-11-16 17:13:09 338

原创 程序员的护城河:如何在IT行业保持竞争力

程序员是现代社会的护城河,他们需要不断地提高自己的技术能力、创新能力和软实力,以在IT行业保持竞争力。技术能力是程序员的基础,创新能力是程序员的动力,软实力是程序员的辅助。只有将这三者有机地结合起来,才能形成程序员的护城河,让程序员在IT行业中立于不败之地。

2023-11-15 17:50:09 90

原创 【JavaScript核心】调用函数的四种方式

函数定义从function关键字开始,构成函数主体的 JavaScript 代码在定义之时并不会执行,只有调用该函数时,它们才会执行。关于变量提升:var 只有变量声明提前,变量的初始化代码仍然在原来的位置;然而 function 则会使函数名称和函数体均提前。作为函数调用作为方法调用作为构造函数调用(new调用)上下文调用(callapplybind在 ECMAScript 2015(ES6)之前,函数内部的this指向是由该函数的调用方式决定的。

2023-11-15 16:27:02 550

原创 【JavaScript核心】声明函数的六种方式

函数体的代码参数列表可以从词法作用域访问的变量返回值调用该函数时的上下文this命名函数或匿名函数保存函数对象的变量arguments 对象(在箭头函数中没有)本文介绍六种声明 JavaScript 函数的方式,分别介绍他们的声明语法、示例和常见的陷阱。并总结在特定的情况下何时使用特定的函数类型。从 ECMAScript 2015 开始,在对象初始化中引入了一种更简短定义方法的语法,这是一种把方法名直接赋给函数的简写方式,可用于对象常量和 ES2015 类的方法声明。

2023-11-14 17:27:03 955 1

原创 【javaScript核心】高阶函数

JavaScript 中,函数是一等公民」,在各种书籍和文章中我们总能看到这句话。通俗地解释就是:JS 中的函数也是对象,可以有属性,可以赋值给一个变量,可以放在数组里作为元素,可以作为其他对象的属性,普通对象能做的它能做,普通对象不能做的它也能做。而所谓的高阶函数(Higher-order function),就是输入参数里有函数,或者输出是函数的函数。最常见的高阶函数有map()reduce()filter()sort()setTimeout。

2023-11-13 18:14:42 22

原创 【javaScript核心】闭包

闭包的定义,分成两个:在计算机科学中和在JavaScript中。闭包的概念出现于60年代,最早实现闭包的程序是 Scheme,那么我们就可以理解为什么JavaScript中有闭包: 因为JavaScript中有大量的设计是来源于Scheme的。

2023-11-10 11:35:35 352 1

原创 【HTML基础】语义类标签

语义类标签的利弊

2023-11-09 21:00:00 44

原创 【JavaScript 核心】事件循环机制

JavaScript 是单线程的,同一时间只能做一件事情。如果碰到某个耗时长的任务(比如一个需要 3s 的网络请求),那么后续的任务都要等待,这种效果是无法接受的,这时我们就引入了异步任务的概念。同步任务:会放入到执行栈中,他们是要按顺序执行的任务;异步任务:会放入到任务队列中,这些异步任务一定要等到执行栈清空后才会执行,也就是说异步任务一定是在同步任务之后执行的。本文所讲的 JavaScript 事件循环机制,它主要与异步任务有关。JavaScript 事件循环总是从一个宏任务开始执行。

2023-11-09 16:36:44 26 1

原创 【JavaScript 核心】栈空间和堆空间

truefalsenullundefinedundefinedtypeofobject在 Javascript 中二进制前三位都为0的话会被判断为 Object 类型,null的二进制表示全0,因此执行时返回object—— 《你不知道的JavaScript(上)》

2023-11-08 15:10:26 30 1

原创 【JavaScript 核心】数据类型

Undefined 类型只有一个值,即特殊的undefined。Undefined值会被赋值给所有未初始化变量,在查看不存在的对象属性时也返回这个值。在布尔上下文中,未定义值被认为是假值。注意: undefined 被认为是真正的基本数据类型。除非显式转换,否则与在逻辑上下文中评估为false的其他类型相比,未定义的值可能会出现不可预料的行为。var test;// 变量被声明但未定义,其值被赋为undefined值// test的值存在,显示为undefined。

2023-11-07 18:11:12 149

原创 Vue Apollo

Vue Apollo 在Vue应用中集成使用 GraphQL 的工具。

2023-02-02 11:16:06 293 1

空空如也

空空如也

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

TA关注的人

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