自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Cassie's blog

失败了是经验,成功了是精彩

  • 博客(52)
  • 收藏
  • 关注

原创 [[scopes]]结合实际分析

上一篇文章说到作用域链,其实作用域链的本质是一个指向变量对象的指针列表,它只引用但不实际包含变量对象。到底是怎样运作得呢?[[scopes]]分析那么自己就在思考,上面说的都是理论知识,内部访问外部,在代码上是不是有上面地方存储了,好奇的我打印了下一个匿名函数如下:可以看到,函数里面有个[[Scopes]],是一个数组对象,现在里面有个全局对象。这就是本章内容的主角了。scopes里面会存在几种类型:Global,Closure,Script,Block,Closure后面那个就是对应的

2020-09-21 11:20:47 1513 3

原创 package.json与package-lock.json

任何事情都不是凭空发生,特别在是技术这件事情上;任何事情都是由最最基础发展而来的,只要追本溯源就能解决问题。问题的产生起因:项目走自动化构建不成功,构建失败说一个包连接github失败,但是我在package.json里面根本没找到这个包,在代码里面也没看到(神奇脸.jpg)猜测:可能是哪个包关联了吧。结论:确实在package-lock.json里面发现了这个包,是项目中另一个包引入的问题,看到项目并没有用,就删除了,自动化是成功解决了。问题来了,为什么会出现这种情况,package..

2020-06-18 21:48:02 604

原创 vue之监听本地存储

问题分析和解决问题:在做项目的时候,遇到需要使用监听本地存储的需求,于是进行了操作:window.addEventListener('storage', function (e) { console.log(e);});如果在一个页面触发缓存变化存储一个route,另一个页面监听并且跳转这个route,最后关闭这个跳转过后的页面,回到之前那个页面。这时候发生了:在监听存储的...

2019-06-20 16:28:53 7836 1

原创 抓住二月的尾巴

一段时间没更新博客了,难道是变懒了,好吧,忙着跑步(其实都是借口,没找到合适的灵感)。今天是二月的最后一天,这一个月怕是一年之中最安逸的日子吧,放了那么久的假,还只有28天。今天一如既往下班,不同的是今天下班买了个包子,给家里打了个电话。自己和爸爸总有聊不完的话题,因为他懂我,也愿意倾听我说的话,和我交流,这是从高中就养成的习惯,不用记日子,每周肯定会打电话,有时候不止一次,反正一有时间就...

2019-02-28 21:55:28 427 1

原创 ES6规范的promise

差不多一个月没写博客了,现在来开启新的一年第一篇博客。今天来说说es6规范的promise属性,始终坚信,技术永无止境,无论做什么,都得从底层做起,基础很重要,一步一步,做大做强是吧,不废话了。在技术领域,永远明白的一个真理,需求推动发展,都是为了更加方便,所谓存在即合理。学习技术也有几个问题时刻问自己:这个东西是个啥?用来干啥?怎么用? promise存在的意义在java...

2019-01-18 16:40:48 303

原创 女生干前端开发个人思考

趁着出差加上明天周末,自己也不是很着急,写下自己一直在思考的问题。大学的自己,对于干技术,自己一直是排斥的,因为只要一想到干技术,自己脑海中浮现的就是改不完的bug,然后和一群大脑爷们儿蓬头垢面的上班,饮食不规律等等。自己想要的生活就是要美美哒,程序员的生活也觉得很枯燥,就一直很排斥,觉得女生干技术,怎么也没有男生厉害的(虽然自己一直喜欢数学,和男生经常一起交流问题),但是总觉得干不过他们。...

2018-12-09 01:01:52 7320 18

原创 vue中的$props、$attrs和$listeners研究

接触一个东西,在技术上我们的一般思路是:这是个啥?怎么使用?有何存在意义?本质探索$props:当前组件接收到的 props 对象。Vue 实例代理了对其 props 对象属性的访问。$attrs:包含了父作用域中不作为 prop 被识别 (且获取) 的特性绑定 (class 和 style 除外)。$listeners:包含了父作用域中的 (不含 .native 修饰器的) v...

2018-11-13 17:03:30 14660 1

原创 “魔鬼”eval

初识eval()eval()函数在很多语言中都有,这仅仅讨论在JavaScript中的情况。由于eval()函数可以将任意字符串当做一个JavaScript代码来执行,所以可谓是特别强大了,经常的使用情况就是,函数名变化,来调用函数之类的。但是为什么说是魔鬼:如果你用 eval() 运行的字符串代码被恶意方(不怀好意的人)操控修改,您最终可能会在您的网页/扩展程序的权限下,在用户计算...

2018-11-05 22:56:25 557

原创 vuex中的表单处理

首先简单的介绍一下vuex。vuex的核心就是store仓库,里面管理着我们的状态, 我们在编写vue程序的时候,状态管理很重要。举个例子:比如我们都知道,加载有个加载的圈在那儿转,等到数据请求完成了,也就消失了,这个东西的写法我们就可以用到状态管理。首先状态值为0,向后端发一个请求,就状态值加1,返回一个请求就状态字减1,等到状态为0的时候,就消失这个加载圈。记住核心是状态,其它的mutat...

2018-10-31 21:45:45 3252 2

翻译 5个技巧写更好的JavaScript条件语句

当我们在使用JavaScript,条件语句少不了的,下面给出5个技巧让我们写出更好的条件语句。1、对于多个条件使用Array.includes方法下面来看一个例子。// 条件function test(fruit) { if (fruit == 'apple' || fruit == 'strawberry') { console.log('red'); }}...

2018-10-29 23:26:35 279

原创 说说弹性布局flexbox

今天是一个特别的节日哈,#1024程序员节#,内部嗨皮一下就好了。但是节日是一个仪式,学习是永不止步的。今天聊聊弹性布局,或许都听厌烦了,自己很早之前也有了解,但是也只是皮毛,今天乘着节日记录一下吧。自己之前第一眼瞧上flexbox(弹性布局)也就是看上了它的垂直居中,这在我们平时的float之类的布局中是个头疼的东西。最后发现flexbox魅力无穷。注意:设为 Flex 布局以后,子元...

2018-10-24 23:47:43 700

原创 优秀到无法忽略

最近美国出版的一本新书《优秀到无法忽略》,《So Good They Can't Ignore You》,读来深有共鸣,这也是自己在自己行业一直在思考的问题。到现在,虽然没有什么成就,但是相比于自己当初,也感觉到了进步,从中找到了自己的乐趣所在。刚刚毕业,都想着改变世界,年轻就应该出去闯荡,就应该到处去看看。选择行业我们也一定要选择跟随自己的内心去,要选择喜欢的,也就是要有激情,这也是越来越多...

2018-10-23 14:02:00 386 1

原创 javascript——事件对比分析

事件流事件流分为冒泡和捕获。冒泡:即事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播到较为不具体的节点(文档)。IE事件流就叫做事件冒泡捕获:事件捕获的思想是不太具体的节点应该更早接收到事件,而最具体的节点应该最后接收到事件。"DOM2级事件"规定的事件流包括三个阶段:事件捕获阶段、处于目标阶段和事件冒泡阶段。事件有哪些,之间的区别是什么呢...

2018-10-20 11:38:10 341

原创 vue项目之webpack打包静态资源路径不准确

文章有点长,希望能够阅读下去,有所帮助。问题将打包好的项目部署到服务器,发现报错说图片找不到。 静态资源如js访问不到分析并且解决问题明确一点的就是,看到报错404,找不到静态资源,很明显,路径错误了。 静态资源找不到如js文件资源打包路径有误,打包后的资源使用了绝对根目录路径,因此将项目部署到特定目录下,其引入的资源路径无法被正确解析。解决:找到confi...

2018-10-19 21:24:43 11877

原创 vue中使用rem布局解析+大屏自适应

公司内部一直有大屏的需求,也一直再做,中途也踩了一些坑,但是没有认真的来总结下。首先项目中,做过移动端的适配,也有现在的大屏需求,中间都离不开不一个单位rem,自适应看起来就很麻烦,不过无惧困难,困难才会看到你说,哟,厉害了,我闪~,下面慢慢聊来。浅析rem首先rem是css单位,相比于px固定的像素单位,rem更加的灵活,还有现在也比较好的vm。如果从未了解过,可以先过过眼rem...

2018-10-18 22:57:14 62345 19

原创 说说table下面定位层级的问题

先来看看问题是怎样的:问题描述:就是一个table,我们想实现的效果是hover到比如标题上面,展示一个窗口的姑且,上面展示一些详细的内容。这样的效果,虽然用div列表也可以实现,但是table总有table的优势,我们这里就讲table。这时候就开动了,很多人的想法,很简单嘛,首先td相对定位,然后里面加个div就是外面那个窗口,绝对定位,完美解决。我只能说,太年轻了我们...上...

2018-10-17 18:45:50 2511

原创 Web存储机制——localStorage、sessionStorage

上一篇文章分析了cookie,也提到了使用cookie的缺陷。正因如此,出现了HTML5 的 Web Storage。出现的原因:就是看不惯数据在客户端和服务器端传来传去的,多耗能啊~~~Web Storage规范包含了两种对象定义:sessionStorage 和 globalStorage,这两个对象在支持的浏览器中都是以windows对象属性的形式存在的。IE8+与cookie的...

2018-10-16 19:08:11 408

原创 谈谈 HTTP Cookie

初识cookieHTTP Cookie通常直接叫做cookie,是小型的纯文本文件cookie指某些网站为了辨别用户身份而存储在用户本地终端上的数据(维基百科)服务器对任意HTTP请求发送Set-Cookie HTTP头作为响应的一部分。浏览器会存储这样的会话信息,并在这之后,通过为每个请求添加Cookie HTTP头部将信息发送回服务器(感觉就像是服务器首先给每个人发一个身份卡,...

2018-10-15 15:54:04 328

原创 vue之require.context

初识require.contextrequire.context是webpack中,用来创建自己的(模块)上下文webpack会在构建的时候解析代码中的require.context()require.context函数接收三个参数:要搜索的文件夹目录 是否还应该搜索它的子目录 以及一个匹配文件的正则表达式// 语法require.context(directory,...

2018-10-11 15:46:46 18480 4

原创 vue中的provide和inject

浅析provide 和 inject 主要为高阶插件/组件库提供用例。并不推荐直接用于应用程序代码中。定义说明:这对选项是一起使用的。以允许一个祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在起上下游关系成立的时间里始终生效。通俗的说就是:组件得引入层次过多,我们的子孙组件想要获取祖先组件得资源,那么怎么办呢,总不能一直取父级往上吧,而且这样代码结构容易混乱。这个就是...

2018-10-11 14:30:40 53451 5

原创 javascript——属性

ECMAScript 中有两种属性:数据属性和访问器属性。数据属性数据属性有4个描述其行为的特性:属性都是用两个方括号定义的,比如上面的value,其实是[[value]]。[[Configurable]]为false不能通过delete删除其属性。例子:var person = { name: "pyc" };比如上面这段代码,[[value]]特性将被设置为...

2018-10-10 13:46:56 477

原创 javascript——闭包

闭包的原理特性闭包:是指有权访问另一个函数作用域中的变量的函数。创建闭包的常见方式:在一个函数内部创建另一个函数分析上面的话,划重点:闭包是一个函数,函数,函数。重要事情说三遍。然后就是它有特权,可以访问另一个函数作用域的变量。其实这个另一个函数就是外部函数。之前一篇文章讲到了作用域和作用域链。https://blog.csdn.net/viewyu12345/article/de...

2018-10-09 14:29:59 172

原创 javascript——函数

要说javascript中最有意思的东西,那莫过于函数了。因为函数实际上也是对象。每个函数都是Function类型的实例,而且同其他引用类型一样具有属性和方法。函数是对象,那么函数名其实就是指向函数对象的指针。函数没有重载重载:函数签名不同,函数名相同。之所以avascript没有重载,其实和上面标红的那句话很有关系。而且ECMAScript函数没有签名。因为参数其实就是arguments...

2018-10-08 16:56:58 180

原创 javascript——垃圾回收

JavaScript具有自动垃圾收集机制,开发人员不必关心内存分配和回收问题。垃圾回收机制通常的两种策略:1、标记清除一句话总结:对于不需要的变量,给一个标记,当下次垃圾收集器执行的时候,释放其内存。        具体的做法就是,离开作用域的值将被自动标记为可以回收。因为从逻辑上来讲,永远不能释放进入环境的变量所占用的内存,只要执行流进入相应的环境,就可能会用到它们。      ...

2018-10-07 22:46:19 453

原创 javascript判断空对象

便于查找,特此记录,利己利人。简单来说,总共有四种方法:方法一:JSON.Stringifyvar obj = {}JSON.Stringify(obj) === '{}'返回值:true (如果对象obj不为空对象,返回false)方法二:jquery的方法$.isEmptyObjectvar obj = {}$.isEmptyObject(obj)返回...

2018-09-27 17:56:26 3676

原创 vue之element-ui文件上传

文件上传需求    对于文件上传,实际项目中我们的需求一般分两种:对于单个的文件上传,比如拖动上传个图片之类的,或者是文件。 和表单一起实现上传(这种情况一般都是文件上传之后,后端返回保存在服务器的文件名,最后和我们的表单一起上传)对于第一种情况,通过看api就很明了。http://element-cn.eleme.io/#/zh-CN/component/upload对于第二...

2018-06-29 17:47:56 166906 11

原创 vue资源分享(个人)

持续更新中,有好的资源大家也可以分享呢...插件类:axios:  https://www.kancloud.cn/yunye/axios/234845

2018-06-15 15:30:41 378

原创 百度地图引用报错A parser-blocking, cross site (i.e. different eTLD+1) script

最近公司在搞vue项目,自己独立学习从头开始呀,都是泪。踩了好多坑,正好今天做到一个地方引入百度地图,之前做angular也做过,但是没有遇到这类问题。百度地图引入首先要申请ak哈。这个网上很多东西。自己遇到的是一个警告,看到控制台有东西就不爽,强迫症,看图:反正后面一大串,这个在控制台很难看,虽然不影响效果。解决办法:直接将我们引入的api地址:<script src="http://ap...

2018-06-15 14:41:41 35274 7

原创 js项目小问题

由于在逐步的使用js中,有一些小问题,也是踩过的坑,或者当时不明确,因此记录下来。每篇文章5个问题1、项目中遇到innerText等这个问题很纳闷,起因是自己帮处理一个xml读取文本,转化为json的问题。本来很简单,但是读取文本都知道innerHTML innerText textContent。因为要处理文本,转化为json,但是使用JSON.parse需要严格遵守JSON格式规范,当然使用这...

2018-05-16 15:37:13 250

原创 git忽略文件.ignore以及项目问题index.lock

如果是git的老司机,那么这个问题就很菜了。就是我们日常在本地管理后,推到远程管理,那么有一些文件我们并不想推送到远程,怎么弄?开始天真的自己竟然认为像node_modules这样的文件,git推送的时候是自动忽略的。(当时的想法是,这些文件太大了,git知道不需要)。现在回过头来,才知道多么天真。其实,需要我们自己定义规则,去考虑git需要忽略那些文件,机器再智能也需要人去操作。1、.ignor...

2018-05-14 19:06:38 2671

原创 文字图片垂直居中

每次做项目都会遇到,因此记下来,日后也可以回顾。关于文字图片的垂直居中(当然外层容器是定高),网上有很多关于此的解决办法,但是经过自己各种方法的尝试,结合兼容性,实用性等等,用下列方法较多:1、文字垂直居中    a、单行文字垂直居中,我们都知道,把高度和行高设置成一样就可以。    b、多行文字垂直居中        方法:用table-cell表格的属性来(这相当于我们见到的td标签,兼容IE...

2018-04-10 23:02:25 789

原创 HTML5 data-*属性

虽然已经有很多的关于此属性的讲解文章,但是下面的内容也属于个人理解,记录一下1、是个啥?有什么用?HTML5的新特性data-*,用于用户自定义属性,对于元素,可以绑定相关的数据了。data-只是属于前缀,对于自定义的属性方便统一管理,就比如一个元素上很多属性,咋一看很混乱,但是如果都自定义的属性前缀都加上data-,一目了然,这是自定义的。比如 data-comment。不仅仅如此,通过js和j...

2018-04-03 17:51:05 3894 1

原创 javascript——百变创建对象

首先一看到创建对象,马上想到的就是对象字面量创建对象 var obj = {}; 或者使用Object构造函数创建对象,var obj = new Object();  没错。但是为什么还要讲创建对象呢?因为这个两种方式虽然能够创建对象,但是,当我们创建对象很多地方相同怎么办,这会产生很多重复代码,一想到重复代码,脑子就应该浮现的解决办法:函数!这里一共有7中创建对象的模式:工程模式 构...

2018-03-31 12:30:33 298 1

原创 git操作后的各种后悔情况解决

项目中遇到的问题,当时的情况是,自己花时间重构一个项目,本来小有成就感,并且代码的整洁度挺好,眼看任务就好完成了,第二天,做一个东西,想看看为优化之前一个地方的属性名,手贱把所有的删除了,就想回到开发分支上看,结果,还好当时想着add ./一下,回到dev分支,进行各种操作后 git checkout .之后,over,所有都没了,当时很天真以为自己的分支上还有。结果就是全回到之前的状态了。 ...

2018-03-23 15:43:23 3641 1

原创 html——置换元素和非置换元素

刚刚接触html的伙伴们听这两个名字就很懵很简单,先来一个问题。什么是行内元素?什么是块级元素?一般我们都会答:行内元素不能设置宽高,不会新起一行,行内元素只能包含数据或者行内元素,不能设置上下margin等等。块级元素当然,能够新起一行,能够设置宽高,margin,并且可以包含块级元素,行内元素和数据。好的,没问题,那么再问:    img是行内元素吗?马上回答,是的。    那么img能够设置...

2018-03-23 14:14:41 2697 1

原创 工作资源

一些比较好的自己常用的工作资源链接压缩图片(熊猫压图):https://tinypng.com/图标常用(阿里):http://www.iconfont.cn/plus css:     模块化规范: http://nec.netease.com/    参考手册: http://css.doyoe.com/    字体图标: http://fontawesome.dashgame.com/3d动...

2018-03-23 14:00:13 591

原创 javascript原型——__proto_和prototype

原型,原型对象,__proto__,prototype这些概念,好烧脑,不过且看慢慢来原型原型链,原型对象研究首先,正规的,我们创建个构造函数看看打印看看:person是一个对象,这个对象中只有一个属性,就是__proto__。由此可以知道,构造函数创建对象,会直接给实例加一个__proto__属性。这个属性里面有两个属性,constructor指向构造函数,看到了吧。__...

2018-03-23 11:56:37 294

原创 javascript中的this

this值在JavaScript中也比较关键,不同的场景代表不同的值。理解是关键全局上下文this对象直接指向全局对象,在浏览器中也就是window对象。这个比较好理解函数上下文在函数中,this对象的情况就比较多了:1、直接调用函数this指向window对象,但是在严格模式下,返回undefined2、当函数作为一个对象的方法来调用的...

2018-03-22 23:28:21 149

原创 javascript——执行环境和作用域

先来明白几个概念:执行环境:有时候也叫环境,定义了变量和函数有权访问的其它数据,决定了他们各自的行为。每一个指定环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中。全局执行环境是最外围的一个执行环境,在Web浏览器中,被认为是window对象,每个函数都有自己的执行环境,每当执行流进入一个函数的时候,函数的环境将会被推入一个栈中,函数执行完成后,栈就被弹出,理解栈...

2018-03-22 20:28:43 439

原创 javascript——基本类型和引用类型区分

ECMAScript变量可能包含两种不同的数据类型的值:基本类型值和引用类型值。基本类型值表示简单的数据段,而引用类型值表示那些可能由多个值构成的对象。基本数据类型是按值访问,引用类型,当复制保存着对象的某个变量时,操作的是对象的引用。但在为对象添加属性的时候,操作的是实际的对象,反正,想象,对象就是放在某个堆堆里面的。区别 1、保存方式不同:引用类型可以增加或者删除属性和方法...

2018-03-22 14:21:37 221

空空如也

空空如也

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

TA关注的人

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