随笔分类 - JavaScript
摘要:为什么会有登录这回事 首先这是因为HTTP是无状态的协议,所谓无状态就是在两次请求之间服务器并不会保存任何的数据,相当于你和一个人说一句话之后他就把你忘掉了。所以,登录就是用某种方法让服务器在多次请求之间能够识别出你,而不是每次发请求都得带上用户名密码这样的识别身份的信息。 从登录成功到登出的这个过
阅读全文
摘要:文件上传原理 根据http协议的定义,完成请求消息体的封装和解析,将二进制内容保存至文件。 关键字: multipart/form-data 含义: multipart表示资源有多种元素组成,form-data使用post方式或HTML Forms上传文件。 结构: 请求头:表示本次请求要上传文件,
阅读全文
摘要:JS如何删除对象中的某一属性 通过delete操作符, 可以实现对对象属性的删除操作, 返回值是布尔 如果你试图删除的属性不存在,那么delete将不会起任何作用,但仍会返回true 如果对象的原型链上有一个与待删除属性同名的属性,那么删除属性之后,对象会使用原型链上的那个属性(也就是说,delet
阅读全文
摘要:一些团队规定禁用 == 运算符换用 严格相等。以工程标准衡量,== 带来的便利性抵不上其带来的成本,团队协作时候你看到别人代码中的 ==,有些时候需要判断清楚作者的代码意图是确实需要转型,还是无所谓要不要转型只是随手写了,增加了一些额外的成本。但是我比较喜欢的一本书 You don't know J
阅读全文
摘要:一、(图的遍历)深度优先和广度优先 广度优先搜索(BFS)队列实现 -类似二叉树的先序遍历 越是接近根结点的结点将越早地遍历。 找到从起始结点到目标结点的路径,特别是最短路径。 广度优先遍历 BFS 从图中某顶点v出发,在访问了v之后依次访问v的各个未曾访问过的邻接点,然后分别从这些邻接点出发依次访
阅读全文
摘要:1、一图认清组件关系名词 父子关系:A与B、A与C、B与D、C与E 兄弟关系:B与C 隔代关系:A与D、A与E 非直系亲属:D与E 总结为三大类: 父子组件之间通信 兄弟组件之间通信 跨级通信 2、8种通信方式及使用总结 props / $emit $children / $parent provi
阅读全文
摘要:vue.js 是采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。 具体实现步骤,感兴趣的可以看看: 当把一个普通 Javascript 对象传给 Vue 实例来作
阅读全文
摘要:在日常工作过程中,我们对于javaScript遍历对象、数组的操作是十分的频繁的,今天把经常用到的方法总结一下! 一、遍历对象 二、遍历数组
阅读全文
摘要:第一步:promise的声明 第二步:三个基本状态(pending、fulfilled、rejected) 第三步:then方法(两个参数:onFulfilled,onRejected) onFulfilled,onRejected如果他们是函数, 则必须分别在fulfilled,rejected后
阅读全文
摘要:1.1 html注释写法 小诀窍: 开始于左尖括号+ !-- 一看到尖括号就联想到html标签的写法,自然就想到了它是html注释,这样比较好记; 使用 < 和 > 是符合HTML标签语法规则的; 1.2 html中的条件注释 这个条件注释一般只针对IE版本的浏览器执行的 HTML 标签。 2.1
阅读全文
摘要:1、深拷贝和浅拷贝是什么意思? 浅拷贝是会将对象的每个属性进行依次复制,但是当对象的属性值是引用类型时,实质复制的是其引用,当引用指向的值改变时也会跟着变化。 深拷贝复制变量值,对于非基本类型的变量,则递归至基本类型变量后,再复制。 深拷贝后的对象与原来的对象是完全隔离的,互不影响,对一个对象的修改
阅读全文
摘要:Vue提供了事件修饰符用于DOM的事件处理,常用的事件修饰符有以下几个: (1). stop:阻止冒泡(通俗讲就是阻止事件向上级DOM元素传递) 点击内层div的结果: 点击外层div的结果: 修改代码,为内层点击事件添加事件".stop"修饰符: 再次点击内层div的结果如下: (2). prev
阅读全文
摘要:1、一图认清组件关系名词 父子关系:A与B、A与C、B与D、C与E 兄弟关系:B与C 隔代关系:A与D、A与E 非直系亲属:D与E 总结为三大类: 父子组件之间通信 兄弟组件之间通信 跨级通信 2、8种通信方式及使用总结 props / $emit $children / $parent provi
阅读全文
摘要:微信使用picker组件,bingchange 换成@change即可使用监听函数和方法 此处注意与微信多了一个mp的信息才能获取到选中的值。 获取当前日期+时间 使用
阅读全文
摘要:一、什么是跨域? 1.什么是同源策略及其限制内容? 同源策略是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSRF等攻击。所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。 同源策略限制内容有: Cookie、Lo
阅读全文
摘要:函数防抖(debounce):在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时。 看一个🌰(栗子): 看一下运行结果: 可以看到,我们只要按下键盘,就会触发这次ajax请求。不仅从资源上来说是很浪费的行为,而且实际应用中,用户也是输出完整的字符后,才会请求。下面我们优化一下: 看一
阅读全文
摘要:构造函数 在 c++ 中,我们可以知道,类是事物的抽象,通过类可以生成一个个实例化的具体对象,类提供着生成对象的“模板”。在 JavaScript 中构造函数(constructor)就起着“模板”的作用,通过构造函数,我们可以生成实例化的对象。 在上面的代码中,Cat 就是构造函数,使用 new
阅读全文
摘要:Event Loop 也叫做“事件循环”,它其实与 JavaScript 的运行机制有关。 JS初始设计 JavaScript 在设计之初便是单线程,程序运行时,只有一个线程存在,在特定的时候只能有特定的代码被执行。这和 JavaScript 的用途有关,它是一门浏览器脚本语言,通常是用来操作 DO
阅读全文
摘要:使用 apply 使用 call 使用 bind apply、call、bind 区别 刚刚我们已经介绍了 apply、call、bind 都是可以改变 this 的指向的,但是这三个函数稍有不同。 在 MDN 中定义 apply 如下; apply() 方法调用一个函数, 其具有一个指定的this
阅读全文
摘要:qs是一个npm仓库所管理的包,可通过npm install qs命令进行安装. 1. qs.parse()将URL解析成对象的形式 如上面代码所示,输出结果如下: 2. qs.stringify()将对象 序列化成URL的形式,以&进行拼接 如上面代码所示,输出结果如下: 那么当我们需要传递数组的
阅读全文

浙公网安备 33010602011771号