- 博客(20)
- 收藏
- 关注
原创 从JS变态题中学到的一些JS生僻或重要知识点
JS变态题如下: http://ourjs.com/detail/52fb82e13bd19c4814000001整理了题目中一些生僻或重要知识点:parseInt(“1”, 0) => parseInt(“1”,10) => 1 parseInt(“2”, 1) => NaN parseInt(“3”, 2) => NaNnull instanceof Object => false 因
2016-07-24 12:01:55
688
原创 [从codewars学习到的JS系列3]数组filter方法与函数call方法妙用
<level2>问题:去除字符串或数组里相邻重复的项,并以数组形式输出结果。如输入[“a”,“b”,“b”,“c”,“a”,“a”],输出[“a”,“b”,“c”,“a”],字符串同理,输出数组。 solution: (1)var uniqueInOrder=function(iterable){ var result = []; for (var i = 0, length = ite
2016-06-30 21:26:17
2183
原创 [从codewars学习到的JS系列1]数组方法reduce(),map(),正则$1等的使用
刚开始在codewars上练JS题,从难度最低的8kyu开始。来这里练题写代码不仅是锻炼自己的编程逻辑思维,更是希望自己写完后看别人优秀简洁的代码,知道自己还有哪些不足,哪些知识点没掌握,原来遇到这种情况还可以使用这种方法等,从而提高自己代码书写的质量,而不至于自己埋头写代码却没有任何成长,借鉴模仿学习,最后变成自己的东西。以下两道题虽简单,自己可能用for循环写完简单了事了,若是不去看其他受欢迎的
2016-06-30 11:23:23
784
原创 HTML文件、PHP文件、JSON文件之间通过AJAX编程简单传递数据
JSON是一种数据格式,不属于任何语言,因而它可在不同语言之间进行传递,但是JSON有简单值、对象、数组三种类型的值,而每个语言对对象和数组的表示语法都不相同,那如何实现JSON中的数据在不同语言之间传递呢。 字符串在任何语言中的表示语法都是相同的(至少绝大多数吧…),都是用引号包裹起来的,因此可以将JSON转换成字符串。然后不同的语言有不同的JSON解析器函数,如JS中JSON.parse(st
2016-06-30 11:01:47
4229
原创 CSS中position的百分比表示法及绝对定位居中
设置了定位position: absolute的盒子,将top设为0%,盒子顶部将会紧挨着父元素(已定位)的顶部,若设为100%,则盒子顶部将会紧挨着父元素底部。 计算公式为:top_percent = 子盒子顶部距父盒子顶部的距离 / 父盒子高度由此可以理解:.element { width: 200px; height: 100px; position: absolut
2016-06-21 14:02:25
11414
原创 JavaScript 正则表达式与字符串查找
首先提出一个问题:如何取得一个给定的字符串substr在另一个字符串str中出现的次数?字符串匹配,第一想到的就是正则表达式,但我们最常使用的字面量来创建的正则表达式方式却无法传入变量,这时应该使用另一种创建正则表达式的方式:构造函数,如下var reg = new RegExp(substr, "g");其中第一个参数表示要匹配的字符串模式,因此可以传入变量,不需要加/ /
2016-06-15 15:52:13
6188
原创 CSS中在body中添加overflow:hidden会发生什么
如标题所述,页面只会展示浏览器中可见区域的那一块,页面的其他内容将无法展示,这也是为什么有时可以在网页中看到这么一个效果:点击登录弹出一个登录框,底下的网页被一层灰色半透明的遮罩层遮罩,然后无法对网页进行拖动(滚动条消失),就是因为在JS中添加了document.body.style.overflow = "hidden"; 这么一行代码,导致页面非可视区内容被隐藏了,没有其他内容可看当然滚动
2016-06-12 22:21:16
1975
原创 JavaScript BOM中的setInterval
setInterval(foo, time)是用来做动画的常用函数之一,称为间歇定时器,由window调用,这点很重要。函数传入两个参数:第一个是回调函数,里面写要重复执行的代码段,因为定时器是由window调用的,所以在回调函数里的this表示的是全局对象!这点在一些事件处理函数中再嵌套定时器时可能会被坑到,比如:btn.onclick = function () { var
2016-06-12 21:39:24
473
原创 JavaScript 标签自定义属性
//自定义属性aaavar box = document.getElementById("box");//通过DOM方法获取id名为box的标签对象console.log(box.id);//box 原来有规定的标签属性 能够通过对象的属性获取到console.log(box.aaa);//undefined 自定义属性,即使已在标签中写明,仍不能通过对象的属性获取
2016-05-28 22:18:43
418
原创 JavaScript 字符串不变性
字符串一旦创建内容后是不可改变的。若之后再执行赋值操作,则会在栈中开辟新空间,原变量指向新的内存,原来指向的数据还在那个位置。所以不宜执行太多次字符串赋值操作,效率较低,内存占用较大,且浏览器可能崩溃(数据量很大时,若是number类型则不会崩溃)。若想拼接大量字符串使用数组和其join方法可以进行优化。
2016-05-28 14:44:00
550
原创 JavaScript switch语句注意点
在switch语句中,若在case执行语句末不写break,则在遇到对的情况执行相应语句后,会一直执行之后case中的语句直到遇到break。如下代码:var a = 8;switch (a) { case 9: console.log("A"); case 8: console.log("B"); case 7:
2016-05-28 14:37:56
543
原创 CSS中将行内元素设置成行内块元素的几种方法
1.display:inline-block2.position:absolute(relative无效)3.设置浮动float这样就可对行内元素设置宽高等块特性了
2016-05-28 14:11:07
15715
原创 CSS图片与文字水平对齐
1) 图片没使用float(文字为行内元素):图片元素需加上vertical-align:middle(此语句对float元素无效),然后通过使用margin-top(不加上先前语句使用此语句会使图片文字一块移动)进一步调整图片位置即可。貌似加不加display:inline-block没区别啊。ps:若将vertical-align:middle加在文字元素上,改变margin-top文字和
2016-05-28 11:29:50
18318
1
转载 CSS选择器优先级
行内样式 > 页内样式 > 外部引用样式 > 浏览器默认样式!important> 内联 >ID > 类 > 标签 | 伪类 | 属性选择 > 伪对象 > 通配符 > 继承 特指度(specificity)。特指度表示一个css选择器表达式的重要程度,可以通过一个公式来计算出一个数值,数越大,越重要。这个计算叫做“I-C-E”计算公式,I——Id;C——Class;E—
2016-05-28 11:17:19
329
原创 我的第一篇博客
本博客空间主要用来记录我在学习前端时整理的笔记,或是转载分享网上看到的一些经典实用的与前端相关的文章。监督自己学习的同时也学会总结温习和思考。我的前端成长史记录从现在开始!希望我能坚持更新这个博客:)
2016-05-27 23:52:52
222
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人