自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 从单向数据到双向数据绑定

本文来自于我的github转载时请注明出处0.前言用户最满意的,无非就是界面的操作能实事反应到数据。而实现这种的可以有双向数据绑定、单向数据流的形式。双向数据绑定是,ui行为改变model层的数据,model层的数据变了也能反映到ui上面。比如点击按钮,数字data+1,如果我们自己在控制台再给data+1,那么v层也能马上看见这个变化。而单向数据流就不同了,我们只有ui行为改变,da...

2018-03-31 23:41:24 711

原创 http、浏览器相关

本文来自于我的github转载时请注明出处0.前言单机玩多了,localhost是最亲近的伙伴,然后到了面试,问起http、cookie相关的,一些安全处理、错误处理,就不行了,所以现在开始慢慢总结,恶补这方面。1.url1.1url的?和#有什么效果和区别#后面的内容是网页位置标识符,一般是锚点<a name='xx'>或id属性<div id...

2018-03-31 23:39:33 182

原创 从MDN的canvas动画例子的启发

本文来自于我的github转载时请注明出处0.前言在MDN上面有一个弹球的例子,我们的小球会在屏幕上弹跳,当它们碰到彼此时会变色。1.面向对象编程的实践官网讲得太长,而且有一些漏洞,我改进一下let canvas = document.querySelector('canvas');let ctx = canvas.getContext('2d');let wi...

2018-03-31 23:38:05 485

原创 函数式编程

本文来自我的github转载时请注明出处0.前言本文并不是完全按照严格意义的函数式编程来讲,主要是抽取一些思想和js结合,以达到写出更有水平的代码的目的。1.概念1.1介绍在计算机科学里,函数式编程是一种编程范式,它将计算描述为表达式求值并避免了状态和数据改变。 函数式编程(FP)思想像数学计算,比如数学中有一个函数为f(x)=x+1,那么f(0)=1,输出结果只...

2018-03-31 23:36:40 270

原创 关于js类型转换骚操作

本文来自我的github转载请注明出处0.前言js身为一种弱类型的语言,不用像c语言那样要定义int、float、double、string等等数据类型,因为允许变量类型的隐式转换和允许强制类型转换。我们在定义一个变量的时候,就一个var、let、const搞定,不用担心数据的类型。比如常见的字符串拼接,用+号可以实现变量和字符串的拼接。 总的来说,一般的规则是 - !后面的字符...

2018-03-31 23:35:10 218

原创 关于JS的正则表达式

本文来源于我的github转载时请注明出处0.前言本文主要介绍了捕获和非捕获的概念,并举了一些例子,这些都是正则表达式在js中进阶的一些用法。后面有彩蛋哦1.捕获1.1RegExp对象的相关属性一般用()括住的就是捕获组,而且类似于算术中的括号,从左到右,逐层去括号。比如存在(A)((B)C)这种,他捕获到的将会是(A)((B)C)、(B)、((B)C),并在内存中存放...

2018-03-31 23:33:50 193

原创 常见的排序算法

本文来源于我的github转载时请注明出处0.前言相信大家面试的时候都要经历手写什么什么排序这种事情吧,要不就是大概说一下思路。不许用各种语言封装好的函数、api,仅仅用原生的方法把他写出来。虽然看起来没什么意思,但是这也是考察一个人的基础有没有扎实、编程思想好不好的一种方法。 重要的事情说三遍: 主要理解快速排序!!! 主要理解快速排序!!! 主要理解快速排序!!! 而且要...

2018-03-31 23:31:37 80

原创 从documentfragement到实现手写vue

本文来源于我的github转载时注明出处0.剧透vue的实现,分为M-V,V-M,M-V三个阶段,第一个阶段主要利用fragement文档片段来节点劫持,使得M和V层关联起来。第二阶段,利用defineProperty使得V层的变化能让M层检测到并更新M层。第三阶段,利用了发布-订阅模式,让M层的变化实时反映到V层中,实现了手写的v-model1.场景首先,抛出一个问题,在...

2018-03-31 23:29:16 377

原创 浅谈js执行与内存

本文来自于我的github转载时请注明出处0.前言主要结合了内存的概念讲了js的一些的很简单、但是又不小心就犯错的地方。 结论:js执行顺序,先定义,后执行,从上到下,就近原则1.先说类型在ECMAscript数据类型有基本类型和引用类型,基本类型有Undefined、Null、Boolean、Number、String,引用类型有Object,所有的的值将会是6种的其中...

2018-03-31 23:26:50 3941

原创 今日头条2018春招笔试题js版本

(蹭蹭热度,我也来写一下。注:以下全是js版本,不考虑性能,只为了实现。因为当时我在外面面试回来只有半小时考试了,下面代码是经过处理后的输入样例,也就是readline后经过处理的数据)本文来自于我的github:https://github.com/lhyt/issue/issues/111.数字对去重后的个数在n个元素的数组中,找到差值为k的数字对去重后的个数。 输入:第一行...

2018-03-30 10:51:46 1152

原创 个人理解:尾调用与递归

尾调用就是指某个函数的最后一步是调用另一个函数。尾递归就是尾调用自身。 相信大家都看过阮老师的这篇文章《尾调用优化》他是说,函数调用会在内存形成一个”调用记录”,又称”调用帧”(call frame),保存调用位置和内部变量等信息。如果在函数A的内部调用函数B,那么在A的调用记录上方,还会形成一个B的调用记录。等到B运行结束,将结果返回到A,B的调用记录才会消失。如果函数B内部还调用函数C,...

2017-12-08 22:34:31 297

原创 关于parseInt

当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。如果 string 以 ...

2017-11-16 16:57:56 216

原创 第一次做小游戏

为了更加理解JS的原型,做了一个小游戏 代码量比较大,git地址https://github.com/lhyt/plane

2017-11-13 23:53:33 285

原创 个人理解(非)阻塞与同步异步

进来学习node,对阻塞和异步有了更加深刻的了解阻塞和非阻塞是关于程序在等待调用结果(消息,返回值)时的状态.阻塞是返回之调用结果前,线程会被挂起(如浏览器有:出现TAB的那个等待中的圆圈的情况)。调用线程只有在得到结果才返回。非阻塞调用指在不能立刻得到结果之前,该调用不挂起(不阻塞当前线程)。比如,你送信给某人,把信拿过去给他,然后一直等(挂起,不管其他所有的事情),直到他看完信发表了感想再走(...

2017-11-13 23:22:30 150

原创 关于小程序:出现脚本错误或者未正确调用 Page()

在每一个js文件里面加上这句代码就可以解决Page({})

2017-11-02 12:02:03 753

原创 用jq写的随机飘物体的效果

随机的因素:产生和结束的地方、漂浮速度、透明度          var flake=$("<div></div>").css("position","absolute").html("❤");//html里面可以是其他内容,现在输入法❉※→这些都是很容易打出来的。当然也可以是图片      $(function(){          var dWidth=$(docum

2017-10-30 13:03:25 1085

空空如也

空空如也

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

TA关注的人

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