随笔分类 -  javascript

摘要:总结就是语法糖 但是很甜 一张图 阅读全文
posted @ 2019-02-21 18:54 GR07 阅读(130) 评论(0) 推荐(0)
摘要:因为机器只能识别2进制,所以结果是一个无限接近0.3的数字0.30000000000000004 那怎么处理这种情况: ES6中提供了这样一个属性:Number.EPSILON,而这个值正等于2^-52,这个值非常非常小,并且无限接近0,但不等于0。 所以只要判断(0.1+0.2)-0.3是否小于N 阅读全文
posted @ 2019-02-21 11:42 GR07 阅读(207) 评论(0) 推荐(0)
摘要:以前遇到相关的问题都没在意也没深究,常用到的就一个阻止冒泡event.stopPropagation() 每次连单词都是复制过去的。 今天找了几篇相关博客看了下算是理清了,特此总结一下也留个备忘。 先说事件流: 事件流指从页面中接收事件的顺序,有冒泡流和捕获流。 假如我们点击一个div,实际上是先点 阅读全文
posted @ 2018-11-09 17:39 GR07 阅读(216) 评论(0) 推荐(0)
摘要:方法说明: 用来定义或修改对象的属性。 共3个参数都是必须的:obj-目标对象、newKey-属性名、{}-属性特性 给对象的属性添加特性描述(第三个参数),目前提供两种形式:数据描述和存取器描述。 数据描述: 存取器描述:注:当使用了getter或setter方法,不允许使用writable和va 阅读全文
posted @ 2018-10-15 16:24 GR07 阅读(587) 评论(0) 推荐(0)
摘要:concat() 对于不包含引用对象的数组可以达到深拷贝的效果 concat() 对于包含引用对象的数组是浅拷贝 阅读全文
posted @ 2018-10-08 17:16 GR07 阅读(206) 评论(0) 推荐(0)
摘要:一、cookie cookie算是比较早的技术,最初是为了记录http的状态,提高访问速度。cookie是服务器"种植"在客户端的key-value形式文本文件。但同时客户端也能操作cookie。特点: 大小:cookie的大小限制在4k。每个域名下cookie的个数现在在20个。 在客户端请求服务 阅读全文
posted @ 2018-07-25 16:49 GR07 阅读(553) 评论(0) 推荐(0)
摘要:forEach() 数组中的每个元素都会通过forEach进行一些改变,会改变原数组。 peoples.forEach(function (people) { people.doSomething();}); map() 数组中的元素通过map进行一些改变后返回一个新数组,新数组中的元素都是原数组中 阅读全文
posted @ 2018-02-12 17:25 GR07 阅读(2200) 评论(0) 推荐(0)
摘要:说明 Object.create() 方法可以创建对象。 第一个参数是为即将创建好的对象指定原型,第二个参数是一个对象,同Object.defineProperties()的第二个参数一样。 区别 同样是创建对象关于{} 与 new Object() 与 Object.create() 三者之间的区 阅读全文
posted @ 2017-12-18 19:37 GR07 阅读(275) 评论(0) 推荐(0)
摘要:为什么要自定义事件,自定义事件要使用在地方? 传统的事件不能满足我们的需求,所以我们需要自定义事件,比如传统的事件有单击,双击,但是突然某一天我想要三击 那就要用到自定义事件了,自定义事件一般使用在观察者模式上,比如主体需要发布各种消息通过创建各种自定义事件来实现,对于消息的订阅则通过注册监听器来实 阅读全文
posted @ 2017-12-12 16:43 GR07 阅读(226) 评论(0) 推荐(0)
摘要:窗口可视区域宽度: document.documentElement.clientWidth || document.body.clientWidth;窗口可视区域高度: document.documentElement.clientHeight || document.body.clientHei 阅读全文
posted @ 2017-12-09 14:50 GR07 阅读(222) 评论(0) 推荐(0)
摘要:今天写了个select下拉联动,记录下过程中遇到的问题。 dom部分 // 拿到选中项的索引 myselect.selectedIndex // 拿到选中项的text/value myselect.options[index].text; 删除元素下的所有子元素 常用三种 最后上个select联动的 阅读全文
posted @ 2017-12-04 11:59 GR07 阅读(168) 评论(0) 推荐(0)
摘要:onclick代码:<div id="box">点我</div> 运行结果:第二个onclick把第一个onclick给覆盖了,但是当我们需要执行多个相同的事件怎么办? addEventListener就出现了 addEventListener代码: 运行结果:依次打印不会覆盖,它可以多次绑定同一个 阅读全文
posted @ 2017-11-28 17:28 GR07 阅读(225) 评论(0) 推荐(0)
摘要:apply 方法/call 方法 obj.call(thisObj, arg1, arg2, ...);obj.apply(thisObj, [arg1, arg2, ...]); 两者作用一致,都是把obj(即this)绑定到thisObj,这时候thisObj具备了obj的属性和方法。或者说th 阅读全文
posted @ 2017-11-22 17:30 GR07 阅读(232) 评论(0) 推荐(0)
摘要:// event(事件)工具集 markyun.Event = { // 页面加载完成后 readyEvent : function(fn) { if (fn==null) { fn=document; } var oldonload = win... 阅读全文
posted @ 2017-11-22 17:25 GR07 阅读(872) 评论(0) 推荐(0)
摘要:二叉树的顺序存储结构 二叉树的顺序存储结构就是用一维数组存储二叉树中的各个结点,并且结点的存储位置能体现结点之间的逻辑关系。 二叉树的遍历 二叉树的遍历有三种方式,如下: (1)先序遍历(DLR),首先访问根结点,然后遍历左子树,最后遍历右子树。简记根-左-右。 (2)中序遍历(LDR),首先遍历左 阅读全文
posted @ 2017-11-22 17:07 GR07 阅读(3293) 评论(0) 推荐(0)
摘要:我们知道,js是单线程执行的(单线程j就是说在程序执行时,所走的程序路径按照连续顺序排下来,前面的必须处理好,后面的才会执行)。所以其实setTimeout和setInterval所谓的“异步调用”事实上是通过将代码段插入到代码的执行队列中实现的。 而如何计算插入的时间点呢?自然是要用到我们所说的t 阅读全文
posted @ 2017-11-22 10:06 GR07 阅读(558) 评论(0) 推荐(0)
摘要:今天呢 知乎看到一道题 说是网易面试题,要求自己写一个trim()方法, 实现 var str = " a sd "; 去掉字符串两端的空格。 直接上码 原理注释写的很清楚 然后我写完后满心欢喜的看了下答案。。。。。结果人家就是一句正则而已 上原答案 正则真的犀利 高效很多 阅读全文
posted @ 2017-11-20 17:58 GR07 阅读(3100) 评论(1) 推荐(1)
摘要:DOM获取 1. 直接获取 document.getElementById("box_id") 通过ID获取 document.getElementsByName("myInput") 通过节点name,返回相同name的数组 document.getElementsByTagName(tagNam 阅读全文
posted @ 2017-11-16 14:01 GR07 阅读(156) 评论(0) 推荐(0)
摘要:冒泡排序原理: 1.比较第一项和第二项; 2.如果第一项应该排在第二项之后, 那么两者交换顺序; 3.比较第二项和第三项; 4.如果第二项应该排在第三项之后, 那么两者交换顺序; 5.以此类推直到完成排序; 实例说明: 将数组[3, 2, 4, 5, 1]以从小到大的顺序进行排序: 1. 3应该在2 阅读全文
posted @ 2017-11-16 12:02 GR07 阅读(324) 评论(0) 推荐(0)
摘要:在函数中this到底取何值,是在函数真正被调用执行的时候确定的,函数定义的时候确定不了。 情况1:构造函数 以上代码中,如果函数作为构造函数用,那么其中的this就代表它即将new出来的对象。 这种情况下this是window,因为Foo函数只是当做普通函数执行,并没有实例化 情况2:构造函数中的p 阅读全文
posted @ 2017-11-02 15:30 GR07 阅读(197) 评论(0) 推荐(0)