自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数组对象去重

为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce 的数组。has方法可以判断Map对象中是否存在指定元素,有则返回true,否则返回false。两两比较,如果后一个对象的id值和前一个对象的id值相等,就把后面的对象删除。下面是我想要得到的结果,就是把id的值一样的对象删掉。values方法可以返回Map对象值的遍历器对象。values方法可以返回Map对象值的遍历器对象。

2023-04-13 10:52:50 151

原创 Js的Map和Set普通去重

ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set 本身是一个构造函数,用来生成 Set 数据结构。另外 Set 是如此强大,因此使用 Set 可以很容易地实现并集(Union)、交集(Intersect)和差集(Difference)。Array.from 方法可以将 Set 结构转为数组。我们可以专门编写使用一个去重的函数。,利用数据结构存值的特点,示例如下。

2023-04-13 10:21:28 318

原创 SEO是什么?前端如何进行网站优化?

是指为了从搜索引擎中获得更多的免费流量,从网站结构、内容建设方案、用户互动传播、页面等角度进行合理规划,使网站更适合搜索引擎的索引原则的行为。正确的 css和js放置 :JavaScript 属性放在HTML 的底部,CSS 样式表放在头部Head。搜索引擎优化是一种利用搜索引擎的搜索规则来提高目前网站在有关搜索引擎内的自然排名的方式。

2023-04-12 17:13:32 298

原创 vue render函数和h()函数

在vue架构中main.js往往为程序的入口文件,其中render()函数将h(app)中传入的内容渲染成虚拟节点(Vnode),是补充通过模板template创建HTML的一种方法,事实上,template中内容也会被编译成Vnode,因此render函数比模板更接近编辑器。下面展示一些 main.js常见内容。

2023-04-10 11:49:18 428

原创 Vue构造选项(Vue实例、内存图、options、入门属性)

实例就是对象比如:之前用jQuery去选择一个元素(如:#app),得到的是一个jQuery实例,这个实例封装了对那个元素的所有操作Vue也是一样的,用Vue做出一个Vue实例一般前面的const vm可以省略,直接写:new Vue(options)构造一个Vue的实例:new Vue(options)1.这个实例会根据你给的选项得出一个对象:vm2.vm封装了这个DOM对象,以及对应的所有操作(事件绑定、DOM读写、更新)

2023-04-06 16:05:08 120

原创 Vue.extend、Vue.component与new Vue

也就是说不同的vue组件可以共用同一个vue构造,不同的vue实例可以共用同一个vue组件。而Vue.component()实际上是一个类似于Vue.directive() 和 Vue.filter()的注册方法,它的目的是给指定的一个constructor一个String类型的ID,Vue.extend() 是一个继承于方法的 class,参数是一个包含组件选项的对象。之后Vue.js可以把它用作模板,实际上当你直接传递选项给Vue.component()的时候,它会在背后调用Vue.extend()。

2023-04-06 15:04:56 586

原创 Vue中 .sync 修饰符和v-model

父组件将 message 的值传给子组件的,子组件中触发事件 update:xxx 需要修改父组件的 message,就可以用 .sync 修饰符简化( sync 操作符的时候。

2023-04-03 11:31:01 637

原创 vue-router路由模式详解

通过pushstate把页面的状态保存在state对象中,当页面的url再变回这个url时,可以通过event.state取到这个state对象,从而可以对页面状态进行还原,这里的页面状态就是页面字体颜色,其实滚动条的位置,阅读进度,组件的开关的这些页面状态都可以存储到state的里面。更关键的一点是,因为hash发生变化的url都会被浏览器记录下来,从而你会发现浏览器的前进后退都可以用了,同时点击后退时,页面字体颜色也会发生变化。如果发现没有浏览器的API,路由会自动强制进入这个模式。

2023-03-29 14:51:15 2515

原创 Vue路由守卫分类以及应用场景

路由其实是一种映射关系。生活中的路由:设备和ip的映射关系;

2023-03-29 11:37:47 727

转载 heap和stack区别

所以在分配和销毁时都要占用时间,因此用堆的效率非常低,但是堆的优点在于,编译器不必知道从堆里分配多少存储空间,也不必知道存储的。数据要在堆里停留多长时间,因此,用堆保存数据时会得到更大的灵活性,事实上,面向对象的多态性,堆内存分配是必不可少的,而堆不属于程序,堆是独立的,是公用的,只要你mallic(sizeof(size),就可以得到相应一部分的堆空间。stack的空间是由操作系统自动分配和释放,存放函数的参数值,局部变量的值,操作方式类似于数据结构中的栈;1.stack栈heap堆。...

2022-07-28 10:13:09 3032

转载 【什么是盒模型】标准盒子模型、怪异盒子模型

标准盒子模型和IE盒子模型什么是盒子模型CSS盒子模型(Boxmodel)就是在网页设计中经常用到的CSS技术所使用的一种思维模型。这些属性我们可以用日常生活中的常见事物——盒子作一个比喻来理解,所以叫它盒子模式。盒子模型主要是针对页面布局的时候来使用,它规范我们的页面的所有元素的一个布局标准是由外向内进行布局。盒子模型由外向内margin(外边距)—>border(边框)---->padding(内边距)---->content(元素)...

2022-07-19 17:43:39 2405

转载 Vue生命周期详解

Vue实例从创建到销毁的过程,就是生命周期。详细来说也就是从开始创建、初始化数据、编译模板、挂载Dom、渲染→更新→渲染、卸载等一系列过程。首先我们来看一下官网的生命周期图(我自己做了一点点注释)...

2022-07-19 12:44:12 122

转载 v-model 指令的底层原理

我们看children数组中的第三个元素,就是component-a组件对应的vnode节点对象,该对象中需要重点关注的是componentOptions对象,这个对象中的数据会用于component-a组件Vue实例的生成,从这个对象中的propsData和listeners属性可以发现,v-model会被翻译成value=""、v-oninput=""。1-1-2,在自定义组件上使用value、v-oninput最终生成的vnode这里。Ctor。...

2022-07-19 09:34:31 1424

转载 px、em、rem区别介绍

任意浏览器的默认字体高都是16px。为了简化font-size的换算,需要在css中的body选择器中声明Font-size=62.5%,这就使em值变为16px*62.5%=10px,这样12px=1.2em,10px=1em,也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了。比如说你在#content中声明了字体大小为1.2em,那么在声明p的字体大小时就只能是1em,而不是1.2em,因为此em非彼em,它因继承#content的字体高而变为了1em=12px。...

2022-07-19 09:32:10 49

转载 css3三角形使用场景

我们根据三角形的位置分为8种triangleup,triangledown,triangleleft,triangleright,triangletopleft,triangletopright,trianglebottomleft和trianglebottomright。在css3中,我们主要使用的是一个transparent的属性,意思是透明的,比如我们将字体设置为黑色会写colorblack,那么如果想把字体的颜色设置为透明,我们可以写colortransparent。...

2022-07-15 11:21:29 85

转载 JS For循环内部延时执行(For循环延时)

我没猜错的话,你写的 for循环延时执行 是这样写的:是不是发现出错了啊?哈哈哈 是不是觉得应该输出0,1,2,3,4,5。但是结果却是六个6 ?经过我一下午的琢磨和研究,找到原因,并且找到了解决办法。原因: js是单线程的,在执行for循环的时候,定时器被放到任务队列中等待执行,等到定时器可以执行的时候,for循环已经跑完了因此打印出六个6。解决方法:同理可以这样原理:1作用域问题 在js中,一个{}就是一个代码块,我们在for循环中定义的i变量,全局可以使用,循环中的每一次给i赋值,都

2022-07-14 09:31:51 3597 1

转载 AMD,CMD,CommonJs到底是何方神圣?以及三者之间的区别

这篇短文写的挺清晰。知道JS有模块化开发的说法,也偶尔听过requireJs,AMD,CMD等等名字,甚至使用node的时候,还用过require之类的方法,但是对这些一直没有一个明确的认识和概念。想必这就是许多新手刚接触这方面知识时的一个普遍状态。其实仅仅做一些基础的活儿的时候,并不需要对它们有太多的了解,知道怎么用就行了,管他是什么理念,是什么实现呢。于是人就懒下来了。终于有一天,下定决心,一定要把这一块知识搞清楚,至少对此有个鲜明的认知,不再那么朦朦胧胧,A/C不分。查了一些文章博客和知乎回答

2022-07-13 10:31:08 2464

空空如也

空空如也

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

TA关注的人

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