Immediately-invoked Function Expression(IIFE,立即调用函数),简单的理解就是定义完成函数之后立即执行。因此有时候也会被称为“自执行的匿名函数”(self-executing anonymous function)。
IIFE的叫法最早见于Ben Alman的文章。文章中Ben Alman 已经解释得很清楚了,希望定义自执行函数式常见的语法错误有两种:
1) function (){ }()
期望是立即调用一个匿名函数表达式,结果是进行了函数声明,函数声明必须要有标识符做为函数名称。
2) function g(){ }()
期望是立即调用一个具名函数表达式,结果是声明了函数 g。
继续阅读 »
content
{:toc}
百度前端学院的第二次任务笔记,JavaScript 基础。主要有JavaScript的定义,数据类型,对象,数组,字符串,正则表达式,DOM,事件,BOM,Ajax 等知识。
任务
掌握JavaScript基础知识,能够使用JavaScript编写一些复杂度不大的交互功能。
继续阅读 »
content
{:toc}
百度前端学院的第一次任务笔记,HTML、CSS 基础。主要有 CSS 工作原理,选择器的使用,常用属性,行高属性,盒模型与定位,最后根据设计图实现4个页面。
任务
任务: HTML、CSS基础
继续阅读 »
React VS Vue
之前写过一个文章说一些React应注意的一些基础问题。现在你应该知道,我已经转Vue了。
我非常喜欢Vue的组件的编写方式。用*.vue的组件编写实在是符合正常人的思考方式。相比之下React的写法就不够人性化了。
继续阅读 »
highlight.js是一款功能强大的代码高亮Javascript工具,支持162程序语言,自带74种高亮样式,支持自动侦测语言类型,几乎所有的markdown都支持highlight.js。Hexo在syntax-highlighting-with-highlightjs的基础上成功实现对代码行号的添加,并且做了一些优化和改进。
注:阅读本文需要一定的前端基础知识。
加载highlight.js
使用highlight.js非常简单,只需引入highlight.js的css及js(推荐在主题模板中作为全局css和js引入,引入的位置在之间)。
html
highlight.js有许多代码风格,我在这里使用的是git
继续阅读 »
之前本站介绍了《Highlight.js 添加代码行号》和《Hexo高级教程之代码高亮》算是对Hexo的代码高亮有比较深的了解了。所以萌生出了写一个
Hexo的静态代码高亮插件的想法。在原来代码高亮的基础上,允许添加代码提示及相关元数据,比如代码链接,代码标题。
注:阅读本文需要一定的前端基础知识。
Hexo自带高亮
Hexo中插入代码有两种写法。一种叫Code Block
plain
{% codeblock [title] [lang:language] [url] [link text] %}
code snippet
{% endcodeblock %}
还有一种是Backtick Code Block
{% ra
继续阅读 »
介绍
一群恶魔的猪从无辜的小鸟那里偷走了所有的前端架构,现在它们要夺回来,一对特工英雄(愤怒的小鸟)将攻击那些卑鄙的猪,直到夺回属于他们的前端架构。(译者注:本系列是关乎前端架构的讨论,作者借用当前最风靡的游戏 - 愤怒的小鸟,为我们揭开了前端架构的真实面目。)
本文将介绍红色大鸟,它们以 IIFE 作为中坚力量进行进攻,IIFE 是一切私有化的基础。
译注:IIFE (Immediately-invoked Function Expression) 立即调用的函数表达式
猪猪偷走了什么
多年来小鸟们们习惯于将它们自定的变量和函数乱扔在全局命名空间下(window 对象),随着时间的推移,它们慢慢学会了如何使用一些技巧
继续阅读 »
介绍
一群恶魔的猪从无辜的小鸟那里偷走了所有的前端架构,现在它们要夺回来,一对特工英雄(愤怒的小鸟)将攻击那些卑鄙的猪,直到夺回属于他们的前端架构。(译者注:本系列是关乎前端架构的讨论,作者借用当前最风靡的游戏 - 愤怒的小鸟,为我们揭开了前端架构的真实面目。)
来认识一下我们的特工英雄
在接下来的几周里会逐渐向你介绍我们的超级英雄...
红色大鸟(大兄弟)
红色大鸟兄弟依靠 IIFE 的力量进行攻击,IIFE 是一切私有化的基础。封装你的代码,保护代码免受其他代码的干扰。
译注:IIFE (Immediately-invoked Function Expression) 立即调用的函数表达式
蓝色小鸟(分身
继续阅读 »
前言
在上一篇文章中,葱哥从零开始创建了一个react的boilerplate,并使用webpack进行build,使其支持ES6,同时使用karma+mocha等进行单元测试。虽然单元测试有了,但是代码中哪些写了测试,哪些没写呢?本文就将在上一篇文章的基础上为其增加生成代码覆盖率的功能。
代码
本文的最终代码可以在react_boilerplate_v8中查看。
准备工作
react boilerplate代码
首先拿到上一篇文章的代码:
```
git clone https://github.com/jiji262/react_boilerplate.git
cd tutorial/react_boilerp
继续阅读 »