<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[全栈启示录]]></title><description><![CDATA[敬畏耶和华是智慧的开端]]></description><link>https://blog.youkuaiyun.com/Hukaihe</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Hukaihe]]></copyright><item><title><![CDATA[轻松学会在项目中使用fontawesome字体图标]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/79821291</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/79821291</guid><author>Hukaihe</author><pubDate>Wed, 04 Apr 2018 19:14:46 +0800</pubDate><description><![CDATA[什么是字体图标



我们的网站经常需要一些形象的小图标来丰富页面的交互与展现。我们当然可以使用图片，但过多的图片会增加HTTP请求的开销，从而对页面的性能造成严重的损耗。即使使用CSS精灵的技术把多张图片揉成一张，对每个图片背景的定位也要花费开发人员不少的精力。此外，图片还可能会存在失真的问题，当我们试图把它们放大时，它们很可能会变得模糊，从而不影响页面的整体风格与用户体验。不如使用字体图标来解...]]></description><category></category></item><item><title><![CDATA[fontawesome 助手]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/79668590</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/79668590</guid><author>Hukaihe</author><pubDate>Fri, 23 Mar 2018 15:48:41 +0800</pubDate><description><![CDATA[致用户的信



Hey，我是阿里巴巴的恩言：

欢迎使用FontAwesome Helper。

Fontawesome是当今世界上最流行的字体图标库之一，它”多元”，”兼容”，”自由”，”高分屏完美呈现”的特性，简直让人欲罢不能！

美中不足的是，海量的优质图标，给我们的记忆带来了很大的挑战。相信你一定常常为忘记了某个”印象中的”图标的名字或者找不到自己心仪的图标而苦恼。Fontawesome...]]></description><category></category></item><item><title><![CDATA[在云服务器上（CentOS)上安装Nodejs]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/79334965</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/79334965</guid><author>Hukaihe</author><pubDate>Sun, 18 Feb 2018 17:20:47 +0800</pubDate><description><![CDATA[在云服务器上（CentOS)上安装Nodejs



安装前的准备



1、 使用命令行登录到服务器上

ssh userName@remoteAddress




2、 查看服务器系统的位数信息

uname -a


通过输出的信息可确定云服务是32位的还是64位的



3、切换环境到安装目录

这里我们在根目录下新建一个叫做app的文件夹，将Nodejs安装到这个文件夹里

cd / ...]]></description><category></category></item><item><title><![CDATA[深入javascript数据存取]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/70479216</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/70479216</guid><author>Hukaihe</author><pubDate>Sun, 23 Apr 2017 00:45:17 +0800</pubDate><description><![CDATA[数据存取是计算机科学中最常见的操作，如何安排数据的存储位置不仅关系到代码在执行过程中数据的检索速度，更影响着整个程序的设计思维。这篇文章将对javascript语言中数据存取的相关知识进行深入的讨论。通过对本文的阅读和学习，你可以理解并掌握：
  js存储数据的位置以及优化方式
  js作用域链的实质以及改变作用域链的方式
  js闭包的实质与闭包导致的内存泄露
  为什么ES5的严格模]]></description><category></category></item><item><title><![CDATA[深入ES6 （四） 字符串的括展]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/70172385</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/70172385</guid><author>Hukaihe</author><pubDate>Fri, 14 Apr 2017 15:06:42 +0800</pubDate><description><![CDATA[第四章 字符串的括展
  ES6加强了对Unicode的支持，并且扩展了字符串对象。本章把重点放在ES6对对象方法的括展上，至于字符Unicode表示法的加强，则不打算详细展开。本章主要包括：
  
  
  模板字符串与标签模板
  字符串括展方法
  字符的Unicode表示法（简介）
  
4.1模板字符串与模板标签模板字符串在第一章我们已经大体介绍了模板字符串的使用方法，先让我们回顾一下。使]]></description><category></category></item><item><title><![CDATA[深入ES6 三 解构赋值]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/70147121</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/70147121</guid><author>Hukaihe</author><pubDate>Wed, 12 Apr 2017 20:29:19 +0800</pubDate><description><![CDATA[解构赋值
  解构赋值指的是按照一定规则，直接从数组和对象中提取值，对变量进行赋值。]]></description><category></category></item><item><title><![CDATA[深入ES6 （二）let和const]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/70142802</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/70142802</guid><author>Hukaihe</author><pubDate>Wed, 12 Apr 2017 14:56:05 +0800</pubDate><description><![CDATA[第二章 let和const
  ES6提供了let和const两种新的变量声明方式，使得在JS中变量的声明更像java那样。这章主要包括了一下内容：
  
  
  ES6的块级作用域
  let声明变量与var的区别
  死区
  const与对象冻结
  
2.1 let与var块级作用域在ES5中存在一个 很经典的循环事件绑定的问题，我们可以使用数组模拟dom集合来还原这个问题：var arr]]></description><category></category></item><item><title><![CDATA[深入ES6（一）历史与简介]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/69949942</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/69949942</guid><author>Hukaihe</author><pubDate>Mon, 10 Apr 2017 15:37:45 +0800</pubDate><description><![CDATA[第一章 历史与简介
  ES6于2015年6月正式发布，其目标是使JS原因呢可用于编写大型的应用程序，成为企业级的开发语言。这篇文章主要介绍： 
  1. ECMAScript的版本历史 
  2. 使用babel对ES6代码进行转码 
  3. 配合gulp搭建ES6开发环境  
  4. ES6最常用的特性]]></description><category></category></item><item><title><![CDATA[小谈ES6解构赋值]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/68517976</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/68517976</guid><author>Hukaihe</author><pubDate>Thu, 30 Mar 2017 21:43:09 +0800</pubDate><description><![CDATA[解构赋值
  解构赋值指的是按照一定规则，直接从数组和对象中提取值，对变量进行赋值。
数组的解构赋值基本用法解构匹配只要左右两边的模式相同，左边的变量就会被赋予对应的值。如果解构不成功，则返回undefined。]]></description><category></category></item><item><title><![CDATA[grunt\gulp的使用对比]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/68516195</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/68516195</guid><author>Hukaihe</author><pubDate>Thu, 30 Mar 2017 21:41:29 +0800</pubDate><description><![CDATA[gulp核心设计基于Unix流的概念，通过管道连接，前者的输出即后者的输入。 这样可以解决使用Grunt的I/O过程中会产生一些中间态的临时文件的问题。因为一些任务需要生成临时文件，其它任务可能会基于这些临时文件再做处理并生成最终的构建后文件。而使用Gulp的优势就是利用流的方式进行文件的处理，通过管道将多个任务和操作连接起来，因此只有一次I/O的过程，流程更清晰，更纯粹。]]></description><category></category></item><item><title><![CDATA[小谈AMD与CMD]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/65938530</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/65938530</guid><author>Hukaihe</author><pubDate>Sat, 25 Mar 2017 17:45:46 +0800</pubDate><description><![CDATA[小谈AMD与CMD
  命名冲突和文件依赖，是前端开发过程中的两个经典问题。人们尝试通过模块化开发方法和思维来解决这些问题。
Sea.js与CMD模块化规范简介Sea.js 是一个适用于 Web 浏览器端的模块加载器。遵循CMD模块化标准。定义模块define(function(require, exports, module){})
引入模块var foo = require('./foo.js']]></description><category></category></item><item><title><![CDATA[细说apply、call和bind]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/65629222</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/65629222</guid><author>Hukaihe</author><pubDate>Fri, 24 Mar 2017 12:01:33 +0800</pubDate><description><![CDATA[apply、call和bind
  我们可以使用函数对象的apply和call来应用函数，切换其执行上下文（this指针）。call和bind本质上是apply方法的语法糖。
call和apply基本用法略。区别二者的区别在于apply处上下文对象外，还接收一个数组做参数。而call则把数组换成了多个可选的形参。一般来说只传递上下文和一个形参时，推荐使用call以减少创建数组的损耗。令我，在严格模式]]></description><category></category></item><item><title><![CDATA[谈谈ES6 Promise]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/62434467</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/62434467</guid><author>Hukaihe</author><pubDate>Thu, 16 Mar 2017 19:09:54 +0800</pubDate><description><![CDATA[Promise 是异步编程的一种解决方案，比传统的解决方案——回调函数和事件——更合理和更强大。]]></description><category></category></item><item><title><![CDATA[面试题总结 JS篇 （一）]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/62423875</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/62423875</guid><author>Hukaihe</author><pubDate>Thu, 16 Mar 2017 15:21:45 +0800</pubDate><description><![CDATA[JS面试题汇总]]></description><category></category></item><item><title><![CDATA[前端面试题总结 HTML+CSS篇（一）]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/60478855</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/60478855</guid><author>Hukaihe</author><pubDate>Sun, 05 Mar 2017 21:46:02 +0800</pubDate><description><![CDATA[里面是一些关于HTML+CSS的面试题汇总]]></description><category></category></item><item><title><![CDATA[前端面试题总结 HTTP\浏览器篇 （一）]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/60478830</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/60478830</guid><author>Hukaihe</author><pubDate>Sun, 05 Mar 2017 21:44:53 +0800</pubDate><description><![CDATA[里面是一些关于http请求和浏览器机制的面试题总结]]></description><category></category></item><item><title><![CDATA[JS String API易混淆的地方]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/56016113</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/56016113</guid><author>Hukaihe</author><pubDate>Mon, 20 Feb 2017 17:08:44 +0800</pubDate><description><![CDATA[slice、substring、substr、subsubstring和slice使用方法基本相同，区别在于substring不接受负参数。substr和substring的区别在于substr的第二个参数是长度，而并非结束位置的索引。在获取字符串片段时，推荐使用slice和substring，不推荐使用substr，因为它没有得到ECMA的标准化。sub方法是用来创建下标字符串的，和字符串的截取无]]></description><category></category></item><item><title><![CDATA[CSS垂直居中的6种方式，最快只用两行代码]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/55670531</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/55670531</guid><author>Hukaihe</author><pubDate>Sat, 18 Feb 2017 20:09:47 +0800</pubDate><description><![CDATA[本文给出了6种利用CSS使HTML元素垂直居中与父元素的方法，其中包括：1、2 绝对定位的方式3 基于属性计算的方式（只需要2行代码哦）4 利用vertical-align属性5 盒子模型方式6 基于内联元素特性需要说一下下面的代码的打开方式，当启用一种方法时，请打开一种方法的注释，然后把其它方法注释掉。]]></description><category></category></item><item><title><![CDATA[你真的会使用ES5 Array API吗？]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/55261680</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/55261680</guid><author>Hukaihe</author><pubDate>Thu, 16 Feb 2017 17:32:34 +0800</pubDate><description><![CDATA[你真的会使用ES5 Array API吗？ 最简单的问题：哪些方法会改变数组本身？这篇文章揭露了一些ES5 Array API中的一些坑，同时，也把一些不太常用的API介绍给大家，你会惊讶的发现，以前我们为了实现某个功能使用的大量代码是多么的可笑，JS已提供了原生的API帮你搞定。。注意，这不是篇Array的参考文档，它只关注容易被web工程师忽略的细节。]]></description><category></category></item><item><title><![CDATA[JS在浏览器上的性能分析（一）脚本的下载与运行]]></title><link>https://blog.youkuaiyun.com/Hukaihe/article/details/55210424</link><guid>https://blog.youkuaiyun.com/Hukaihe/article/details/55210424</guid><author>Hukaihe</author><pubDate>Wed, 15 Feb 2017 15:34:05 +0800</pubDate><description><![CDATA[在这篇文章中，你将会学到浏览器脚本文件下载和执行的阻塞特性和如何对其进行优化。使用script元素的属性以及一些常用手段使脚本无阻塞加载。]]></description><category></category></item></channel></rss>