Js的new关键字 发表于 2018-07-05 | 分类于 前端技术 | 阅读次数: 概念在MDN中这样描述:new运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实例。说白了就是在Js中编写函数来定义对象类型,然后可以通过new关键字来创建一个对象实例。 原理那么new一个函数到底经历了什么过程,看下图:《你不知道的Js》这样描述:MDN这样描述:第三点大致意思就是 ... 阅读全文 »
Js计时器的小发现 发表于 2018-07-04 | 分类于 前端技术 | 阅读次数: 今天在撸代码时,发现之前某个同事封装的倒计时方法有点奇怪,问题如下: 简单介绍这段代码的实现思路吧,主要是递归调用setTimeout来进行倒计时的,并且保存了 setTimeout 返回一个 ID(数字)。剩余10秒会弹出提示框,0秒时结束退出。但是令我比较费解的是,它清除这个ID并不是用cle ... 阅读全文 »
ES6中Promise的总结 发表于 2018-06-19 | 分类于 前端技术 | 阅读次数: 闲话近期项目比较忙,将近一个月没更博了。趁着今天有空来总结一下Promise,顺便安利给大家一本关于Promise的书:《JavaScript Promise迷你书》,该书对于Promise介绍得比较详细,内容通俗易懂。 什么是PromisePromise是抽象异步处理对象以及对其进行各种操作的组件 ... 阅读全文 »
LeetCode初级练习之链表篇 发表于 2018-05-23 | 分类于 算法 | 阅读次数: 删除链表的结点题目:请编写一个函数,使其可以删除某个链表中给定的(非末尾的)节点,您将只被给予要求被删除的节点。比如:假设该链表为 1 -> 2 -> 3 -> 4 ,给定您的为该链表中值为 3 的第三个节点,那么在调用了您的函数之后,该链表则应变成 1 -> 2 -> ... 阅读全文 »
聊聊跨域 发表于 2018-05-15 | 分类于 前端技术 | 阅读次数: 闲言记得我在一篇博客中提到跨域问题,这里要说明的一点是,我们之前提到关闭浏览器的安全策略那套解决跨域的方法仅仅是为了便于hybrid开发能够在PC端进行接口调试,而实际上前端端或服务端是需要通过程序来处理跨域的,因为通过关闭浏览器安全策略这套方案并不现实。 什么是跨域跨域这个概念相信不论做web开发 ... 阅读全文 »
LeetCode初级练习之字符串篇 发表于 2018-05-08 | 分类于 算法 | 阅读次数: 反转字符串题目:请编写一个函数,其功能是将输入的字符串反转过来。示例: 输入:s = "hello" 返回:"olleh" 分析:js字符串可以通过调用split转换成数组,然后通过调用数组reverse方法反转,最后再调用join将字符串转换成数组。 代码: ... 阅读全文 »
聊聊Js的精度问题 发表于 2018-05-03 | 分类于 前端技术 | 阅读次数: 前言今天刷leetcode的时候,使用的其中一个解法出现了精度问题。代码如下: /** * @param {number[]} digits * @return {number[]} */ var plusOne = function(digits) { // 将数组转换成字符串再通过N ... 阅读全文 »
LeetCode初级练习之数组篇 发表于 2018-04-27 | 分类于 算法 | 阅读次数: 补充说明随着刷题的量增加,愈发觉得leetcode给出的执行时间存在问题,故去论坛逛了逛,果然不出所料,因此说明一下:leetCode给出的执行时间会有偏差,甚至同样的代码,提交两次得到的时间都不一样,同等时间复杂度会有几十ms的差别。所以leetcode反馈的运行时间如果差别在一个数量级以上,这时 ... 阅读全文 »
Js里的连续赋值 发表于 2018-04-01 | 分类于 前端技术 | 阅读次数: 今天翻JQuery源码的时候,发现了一个很有意思的东西。 window.jQuery = window.$ = jQuery; 我还是第一次见这种连续赋值的代码。遂去论坛查了挺多资料,发现很多说法缺少一些说服力,或者在一些关键环节就一笔带过了。不过千万不要在JS中使用连等赋值操作的作者逻辑很严谨,下 ... 阅读全文 »
Js基础之类数组对象 发表于 2018-03-31 | 分类于 前端技术 | 阅读次数: 概念数组,是一种类列表对象,它的原型中提供了遍历和修改元素的相关操作,其类属性为”Array”。 类数组对象(array-like object),顾名思义,一个类似数组的对象。我们在Js中常见的类数组对象有:函数中的Arguments对象;DOM中的:NamedNodeMap、HTMLCollec ... 阅读全文 »