JavaScript

每天一章犀牛书——CHAP10:正则表达式

1. 正则表达式语法1.1 表示方法//字面量模式,/表达式/修饰符使用new RegExp(字符串,修饰符 | 正则表达式)构造函数。在ES5中,参数是正则表达式时不允许传入第二个参数。在ES6中,当第一个参数为正则表达式是,可以传入第二个参数修饰符,这时第二个参数的修饰符会覆盖第一个参数正则表达式之中的修饰符。1.2 字符类[][]:匹配[]中的任意字符.:除换行符或其

那些年我们踩过的乱码坑

欢迎关注个人网站:http://www.iamaddy.net/2016/07/emoji-unicode-parser/前言这是一个由乱码引发的故事。抱歉我暂时找不到更加惨烈的图,请相信我,还有更目不忍视的画面。请看下图那些框框,那都是些什么鬼!这是要害死强迫症吗?如果同时看到几十个框,简直让人崩溃。问题来了,这究竟是些什么鬼?计算机编码既然是乱码,当然要看编码,那什么是

React.createClass和etends Component的区别

createClass本质上是一个工厂函数,extends的方式更加接近最新的ES6规范的class写法。两种方式在语法上的差别主要体现在方法的定义和静态属性的声明上。createClass方式的方法定义使用逗号,隔开,因为creatClass本质上是一个函数,传递给它的是一个Object;而class的方式定义方法时务必谨记不要使用逗号隔开,这是ES6 class的语法规

bigSlide 插件应用

一、 插件官网bigSlide.js二、 基本代码侧边栏控制开关用一个 标签来控制侧边栏的开关。# menu 用来指向 id 为 menu 的侧边栏,menu-link 为这个 标签的类名。☰侧边栏代码实例侧边栏代码如下,由于需要实现的效果各不相同,所以各个 1. 标签中设置的 style 并不一样,这样的代码看起来很乱,其实还是应该写在css中,并根据效果进行分类。

关于 JavaScript 闭包的简单例子

JavaScript 闭包 于控制台中运行如下例子: 无闭包: var x = []; for (var i = 0; i 闭包: var y = []; function doSetTimeout(i) { setTimeout(function () { y[i] = i; }, 1000); } for (var i = 0; i 简写: var z = []; fo

javascript模块化(二)--RequireJS初探

前言:在慕课网上跟着视频《侧边工具栏开发》做了一遍,用到了jquery操作DOM,其中,用requirejs管理模块依赖,然后自定义了两个模块它们都依赖jquery,并且其中一个自定义模块依赖另一个,所以要暴露出接口。看完视频初步认识了一下requirejs,以及模块化开发的概念,在此做一下总结。感谢慕课网上的老师。使用模块化开发的好处:有效的防止命名冲突声明不同的js文件

浅谈DOMContentLoaded事件及其封装方法

我们在开发时,经常需要检测页面是否加载完毕,以确保脚本安全运行,下面我们就来浅谈一下检测页面是否加载完毕的那些事件们。1. onload 事件在页面的所有资源加载完成时,window对象上会触发一个onload事件。该事件通常被用以执行一些逻辑代码。比如,你需要通过JS去访问一个DOM。 console.log(document.getElementById('nam

Tree v3.5 Demo 演示 OutLook 样式的左侧菜单

简介为了让朋友们更容易的学习 zTree,官网给出了大量的 Demo,不同的图标,不同的风格,好学易懂,这是官网链接:zTree v3.5 Demo 演示。由于工作需要,这里只是把组合功能中OutLook 样式的左侧菜单参考Demo源码实现了,分享给大家我的学习所得。Html和CSS下载zTree v3.5 Demo 演示的源码,将下图所示的文件整合出来,并创建一个outl

前端Tank技能---浏览器嗅探

浏览器嗅探浏览器嗅探不用说了,为了更好的性能,会需要各种各样的兼容性处理,自然就会有针对不同浏览器的判断.一般的代码中,我们都是通过navigator.userAgent来判断不同的浏览器的情况的。亲测浏览器navigator.userAgent火狐:chrome:ie8:sougou高速:sougou兼容:亲测结果分析首先为什么全部都是Mozilla打头,而后后面的一堆内

设计模式---状态模式在web前端中的应用

在vue.js之类的mvvm的框架大行其道的当下,开发中最常见的场景就是通过改变数据来展示页面或模块的不同状态,当我们把mvvm玩的不亦乐乎的时候,有时也会停下了想想:在某些项目中不能用vuejs之类的框架时,我们怎么通过改变数据来修改页面或者模块的状态呢。嗯。说到状态,就想到了状态模式状态模式:在很多情况下,一个对象的行为取决于一个或多个动态变化的状态属性,这样的对象叫做