自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 正则表达式

对于正则表达式,我平时用到的话基本上就是去搜索引擎上直接搜索,因位我觉得就没有什么规律。但是最近复习es6里面有正则的部分,所以我又把正则表达式看了一遍。这次再考的时候好像很多东西其实是可以看完之后就理解了同时记住的,让我们一起来看看如何理解着记住这些东西:从字符出发我们学习一个系统化的知识,一定要从其基础构成来了解。正则表达式的基本组成元素可以分为:字符和元字符。字符很好理解,就是基础的计算机字符编码,通常正则表达式里面使用的就是数字、英文字母。而元字符,也被称为特殊字符,是一些用来表示特殊语义的

2021-09-19 17:38:51 254

原创 ES6系列--1.块级作用域的绑定

1.Var声明以及变量提升(Hosting)机制在函数作用域或者全局作用域中通过关键字var声明的变量,无论在哪声明的,都会被当成在当前作用域顶部声明的变量,这就是我们常说的变量提升机制(Hosting),下面以一个函数来说明:function getValue(condition){ if(condition){ var value = "blue" //其他代码 return value } else { //

2021-09-19 17:37:21 105

原创 Vue中组件传值

1.父传子 自定义属性props1)子组件在props里面收一下2)父组件在data里面声明要传的数据3)父组件在子组件的占位符标签里面传一下2.子传父 自定义事件1)在父组件的子组件占位符里先绑定一个自定义事件2)在methods里面定义这个绑定的自定义事件3)在子组件中通过this.$emit(自定义事件名,参数)触发自定义事件3.兄弟之间互传 EventBus1.建一个eventBus.js文件import vue from 'vue'//向外共享一个vue.

2021-09-19 17:35:47 100

原创 为什么在vue组件中data要写成函数而不是对象?

问题描述:为什么在vue组件中,我们的data属性必须是一个函数,new Vue()中的data除外,因为new Vue中只有一个data属性。原因:因为我们能抽离出来的组件,肯定是具有复用性的,它在项目中会存在多个实例。如果data属性值是一个对象时,那么它所有的实例都会共享这些数据,这是很麻烦的事情,你不能确保你的所有实例中的属性值都不会重复。我们的期望是,组件的每个实例都能独立的维护自己的数据。解决方案我们都知道,在JavaScript中,函数具有独立作用域块的特点,外部是无法访问其内

2021-09-19 17:34:29 624

原创 Vue中v-for时为什么要绑定key?

我们都知道,Vue很大的一个特点就是双向数据绑定,数据一旦改变,那么页面就渲染新的数据呈现在页面上。但是对于用v-for渲染的列表数据来说,数据量可能一般很庞大,而且我们经常还要对这个数据进行一些增删改操作。假设我们给列表增加一条数据,整个列表都要重新渲染一遍,那不就很费事了。而key的出现就是尽可能的回避这个问题,提高效率,如果我们给列表增加了一条数据,页面只渲染了这数据。v-for默认使用就地复用策略,列表数据修改的时候,他会根据key值去判断某个值是否修改,如果修改,则重新渲染这一项,否则

2021-09-19 17:32:09 808

原创 如何在新项目优雅的使用svg-icon?

要优雅,不要污????1.安装依赖npm i svg-sprite-loader@4.1.32.配置 vue.config.jsconst path = require('path')function resolve (dir) { return path.join(__dirname, dir)}//补充一个配置{ }{ // 省略其他... chainWebpack (config) { // set svg-sprite-loader config.m

2021-09-16 19:25:08 81

原创 数据结构之-数组

数组无处不在,当你需要多于一个数据的传输或者展示的时候,就会用到数组。现在我们从定义说起。数组定义数组就是一组数据,表现形如:[1,3,5,7]复制代码JavaScript中,数组元素可以是任意类型,不过通常,同一类型的一组数据更常见,也更有实际意义。可以用下面几种方式定义数组:字面量 Array()构造函数字面量最简单直观,也是最常用之一。let arr = [1,2,3]复制代码这里有两个需要注意的现象:let arr = [1,,3] //访

2021-09-16 19:21:36 275

原创 前端登录,进不去?来看看是什么阻碍了你

登录是每个网站中都经常用到的一个功能,在页面上我们输入账号密码,敲一下回车键,就登录了,但这背后的登录原理你是否清楚呢?接下来我们用超详细的过程向你解释点击了登录之后请求是怎么发出去的~1.表单验证(login/index.vue)utils/validate.js ---> validMobile 验证手机号和密码,先进行正则校验再进行兜底校验 这里简单介绍一下验证的步骤: 1)定义验证规则。data()中按照格式定义规则 2)在模板上做属性配置来应用规则(三个配置)    给表

2021-09-16 19:19:22 2299

原创 (前端面试)New干了什么?模拟实现一个new

最近开始着手准备面试,就一边刷面经一边写一些文章。其实这些文章网上都有很多了,那我为什么还要发篇文章写这些呢?之前看到过这么一句话我觉得还蛮好的:学习就好比是座大山,人们沿着不通过的路登山,分享自己看到的风景,你不一定能看到别人看到的风景,体会到别人的心情。只有自己去登山,才能看到不一样的风景,体会才更加深刻。New的一生我们平时经常使用new 来创建一个实例,但是new到底做了什么呢? 让我们来看看接下来会发生什么(1)创建一个新的对象(2)将构造函数的作用域赋给新的对象(因此this就

2021-09-16 16:43:31 301

原创 力扣每周小结(数组)

数组一般数组的问题里,涉及到查找某一个元素出现了几次 或者 找出给定元素 target在数组中出现的次数,我都采用了如下方法进行解答:模板代码:function search(nums, target) { let obj = {}; for (let i = 0; i < nums.length; i++) { if (obj[nums[i]]) { obj[nums[i

2021-09-16 16:37:05 97

空空如也

空空如也

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

TA关注的人

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