首页> javascript

es5-shim和es5-sham的区别以及react兼容IE8处理

分类:前端开发2016-05-10阅读:(7915)标签:javascript, react
新版的react,v15.0已经不支持IE8了,如果项目需求需要兼容到IE8,那我们就要用稍微低点的版本了,v0.14版本的还兼容IE8,但是我们的react脚本编译后是ES5的,在IE8上还需要使用es5的兼容插件es5-shim和es5-sham。先说说我遇到的坑。以前写HTML5,为了兼容引入了html5-shiv。今天练习react,看IE8的兼容情况的时候,发现不起作用。一边goo...

页面激活判断

分类:前端开发2016-05-05阅读:(1750)标签:javascript
浏览器有多个标签页的时候,当前激活的只有一个,其它的几个页面会失活,他们的setInterval等方法就会停滞,一些事件会累积,不会被处理。那这里也就提出了一个问题,判断当前页面是激活状态还是失活?如果换句话说就好理解了,判断页面是激活状态还是失焦状态?从激活和失焦,我们就很容易想到focus和blur。e.g.<script> (function() { window....

面向对象12种继承方法

分类:前端开发2016-03-30阅读:(985)标签:javascript
1,原型链法(仿传统)Child.prototype = new Parent(); 基于构造器的工作模式;使用原型链模式;注解:默认继承机制。我们可以将方法与苏醒几种可重用的部分迁移到原型链中,而将不可重用的那部分设置为对象的自身属性。2,仅从原型继承法Child.prototype = Parent.prototype; 基于构造器工作的模式;原型拷贝模式(不存在原型链,所有的对象共享一...

js正则面试题:字符串全局匹配模式下的返回值问题

分类:前端开发2016-03-25阅读:(1137)标签:javascript, 正则表达式
技术群里看到一个关于js正则的面试题。大致如下:var reg = /abc/g; var str = 'abcd'; alert(reg.test(str)); alert(reg.test(str)); 以之前的见识,我觉得两次弹出都是true,为什么这么出题?难道不一样,为什么呢?测试了一下,一次true,一次false,而且继续往下alert的话,都是true,false交替的。百撕...

setTimeout,setInterval第三个参数

分类:前端开发2016-03-19阅读:(1057)标签:javascript
setTimeout和setInterval是什么就不说了,今天在看ES6的promise的时候,看到代码中setTimeout传递了三个参数。难道这第三个参数是前面函数的参数?eg:function timeout(ms) { return new Promise((resolve, reject) => { setTimeout(resolve, ms, 'done')...

window.requestAnimationFrame更好的动画操作

分类:前端开发2016-03-19阅读:(761)标签:javascript
window.requestAnimationFrame()这个方法是用来在页面重绘之前,通知浏览器调用一个指定的函数,以满足开发者操作动画的需求。这个方法接受一个函数为参,该函数会在重绘前调用。注意: 如果想得到连贯的逐帧动画,函数中必须重新调用 requestAnimationFrame()。如果你想做逐帧动画的时候,你应该用这个方法。这就要求你的动画函数执行会先于浏览器重绘动作。通常来...

Javascript中call()和apply()的区别

分类:前端开发2016-03-05阅读:(833)标签:javascript
在Javascript中,函数会在各种不同上下文中被使用,函数中的this一般会被自动设置,但是你可以改变this的值来改变函数运行时的上下文。因为 JavaScript 的函数存在“定义时上下文”和“运行时上下文”以及“上下文是可以改变的”这样的概念。有3种函数方法允许你改变this的值。函数是对象,所以函数也有方法。1,call()方法;2,apply()方法;3,bind()方法;bi...

ajax获取json文件数据遇到的坑

分类:前端开发2016-01-09阅读:(1420)标签:javascript, ajax, jquery, json
今天做ajax访问json文件数据的时候遇到了灵异事件,首先,对于XX.json文件的使用,我是第一次。好吧,也不是灵异事件,只是经验不足造成的错误。先来个简洁版的案情重现。页面中的一些数据需要通过接口获取,这里的数据放到了xx.json文件里,当然,通过ajax请求的就是这个xx.json文件了。ajax请求是用的jQuery的$.ajax()方法,既然是填坑,就针对坑来说,代码如下:&l...

关于string.replace方法的函数参数相关问题

分类:前端开发2016-01-04阅读:(1036)标签:javascript
stringObject.replace()方法第二个参数为函数时,其参数根据前面匹配规则变动。eg1:var str = 'good good study, day day up.'; var reg = /o/g; str.replace(reg,function(){ console.log(arguments); }); // ["o", 1, "...

JSON对象的parse和stringify方法

分类:前端开发2015-12-27阅读:(2060)标签:javascript
JavaScript Object NotationJSON 是一种用来序列化对象、数组、数值、字符串、布尔值和 null 的语法。它基于 JavaScript 语法,但是又有区别:一些 JavaScript 值不是 JSON,而某些 JSON 不是 JavaScript 值。JSON对象包含了两个主要方法,一个方法用来将JavaScript值转换为JavaScript Object Not...
前端开发