<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ca817586的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ca817586</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ca817586]]></copyright><item><title><![CDATA[懒加载与预加载的区别详细]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78665198</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78665198</guid><author>ca817586</author><pubDate>Wed, 29 Nov 2017 14:42:52 +0800</pubDate><description><![CDATA[懒加载
1.什么是懒加载？懒加载也就是延迟加载。 
当访问一个页面的时候，先把img元素或是其他元素的背景图片路径替换成一张大小为1*1px图片的路径（这样就只需请求一次，俗称占位图），只有当图片出现在浏览器的可视区域内时，才设置图片正真的路径，让图片显示出来。这就是图片懒加载。2.为什么要使用懒加载？很多页面，内容很丰富，页面很长，图片较多。比如说各种商城页面。这些页面图片数量多，而且比较大，少说]]></description><category></category></item><item><title><![CDATA[JavaScript常见算法面试题]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78664128</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78664128</guid><author>ca817586</author><pubDate>Wed, 29 Nov 2017 13:05:26 +0800</pubDate><description><![CDATA[//数组去重
        var arr = [1,2,3,5,6,9,8,9,5,3,2,10,1,7,4];
        function deleteRepetition (arr) {
            var tmp = {};
            var newArr = [];
            for(var i =0; i < arr.length; i++]]></description><category></category></item><item><title><![CDATA[JavaScript常见算法面试题]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78664096</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78664096</guid><author>ca817586</author><pubDate>Wed, 29 Nov 2017 13:00:18 +0800</pubDate><description><![CDATA[function Fn(){
            getFn = function(){
                console.log('1');
            }
            return this;
        }
        Fn.getFn = function(){
            console.log('2');
        }]]></description><category></category></item><item><title><![CDATA[代理设计模式在页面中的应用]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78663770</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78663770</guid><author>ca817586</author><pubDate>Wed, 29 Nov 2017 11:58:56 +0800</pubDate><description><![CDATA[有些网站运行加载慢, 或者请求的图片特别大 ,我们可以用代理模式预加载的形式var imgSrc2 = 'http://www.kentguitarclassics.com/wp-content/uploads/2017/05/Stephen-Hill-2017-219-Front-350x476.jpg';
    var  myImage = (function () {
       var]]></description><category></category></item><item><title><![CDATA[JavaScript代理设计模式原理]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78654979</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78654979</guid><author>ca817586</author><pubDate>Wed, 29 Nov 2017 11:07:38 +0800</pubDate><description><![CDATA[设计模式（Design pattern）是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。　　使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问，设计模式于己于他人于系统都是多赢的；设计模式使代码编制真正工程化；设计模式是软件工程的基石脉络，如同大厦的结构一样。设计模式绝对不是纸上谈兵的知识，光看书就以为自己懂了，那只是井底之蛙之见，设计模式绝对是从实]]></description><category></category></item><item><title><![CDATA[导航栏跟踪鼠标水平方向滑动]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78654746</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78654746</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 14:28:56 +0800</pubDate><description><![CDATA[看过很多人写的导航栏案例,感觉都十分好, 在此我就表达一下我自己在学习中的心得吧 css部分
*{
            margin: 0;
            padding: 0;
        }
        body{
            background-color: #000;
        }
        .nav{
            width: 8]]></description><category></category></item><item><title><![CDATA[BOM（浏览器对象模型）和DOM(宿主对象模型)]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78654010</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78654010</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 13:23:57 +0800</pubDate><description><![CDATA[什么是BOM（浏览器对象模型）BOM：(Browser Object Mode) 浏览器对象模型。由于现代浏览器已经（几乎）实现了 JavaScript 交互性方面的相同方法和属性，因此常被认为是 BOM 的方法和属性，也因此称之为：浏览器对象模型 (BOM) 使 JavaScript 有能力与浏览器“对话”。window对象是BOM的顶层(核心)对象，它可以表示整个浏览器的窗口，所有对象都是通过它]]></description><category></category></item><item><title><![CDATA[React实战开发工作原理]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78653947</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78653947</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 13:15:03 +0800</pubDate><description><![CDATA[React工作原理： 
把每一个组件当成了一个状态机，组件内部通过state来维护组件状态的变化，当组件的状态发生变化时，React通过虚拟DOM技术来增量并且高效的更新真实DOM。 
虚拟DOM则是在DOM的基础上建立了一个抽象层，我们对数据和状态所做的任何改动，都会被自动且高效的同步到虚拟DOM，最后再批量同步到DOM中。React 特点： 
1.声明式设计 −React采用声明范式，可以轻松描]]></description><category></category></item><item><title><![CDATA[vue实战开发原理]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78653836</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78653836</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 12:58:37 +0800</pubDate><description><![CDATA[想通过vue必须安装vue-cli    Vue-cli是Vue的脚手架工具  地址：https://github.com/vuejs/vue-cli主要作用：目录结构、本地调试、代码部署、热加载、单元测试vue开发与angular,react的区别   http://blog.youkuaiyun.com/dreamstom/article/details/53043992Vue.js的特性如下：
1.轻量级]]></description><category></category></item><item><title><![CDATA[JavaScript数组内置方法介绍]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78653485</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78653485</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 11:52:06 +0800</pubDate><description><![CDATA[数组方法： 
数组创建的两种方式： 
第一种使用Array构造函数：var arr1 = new Array(); //创建一个空数组
var arr2 = new Array(20); // 创建一个包含20项的数组
var arr3 = new Array("lily","lucy","Tom"); // 创建一个包含3个字符串第二种使用数组字面量表示法：var arr4 = []; //创建一]]></description><category></category></item><item><title><![CDATA[跨域解决方案大全]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78652903</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78652903</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 11:07:29 +0800</pubDate><description><![CDATA[什么是跨域注：本文完整示例地址  
先来说一个概念就是同源，同源指的是协议，端口，域名全部相同。同源策略（Same origin policy）是一种约定，它是浏览器最核心也最基本的安全功能，如果缺少了同源策略，则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的，浏览器只是针对同源策略的一种实现。 
同源策略是处于对用户安全的考虑，如果非同源就会受到以下限制：cookie不能]]></description><category></category></item><item><title><![CDATA[Ajax工作原理]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78652490</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78652490</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 10:40:00 +0800</pubDate><description><![CDATA[在写这篇文章之前，曾经写过一篇关于AJAX技术的随笔，不过涉及到的方面很窄，对AJAX技术的背景、原理、优缺点等各个方面都很少涉及null。这次写这篇文章的背景是因为公司需要对内部程序员做一个培训。项目经理找到了我，并且征询我培训的主题，考虑到之前Javascript、CSS等WEB开发技术都已经讲解过了，所以决定针对AJAX这一块做一个比较系统的培训，所以这篇文章实际上是一个培训的材料。  在这篇]]></description><category></category></item><item><title><![CDATA[Javascript之对象的继承]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78652427</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78652427</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 10:35:26 +0800</pubDate><description><![CDATA[继承是面向对象语言一个非常重要的部分。许多OOP语言都支持接口继承和实现继承两种方式。接口继承：继承方法签名；实现继承：继承实际的方法。在ECMAScript中函数是没有签名的，所以也就无法实现接口继承，只能支持实现继承。在JavaScript中有大概六种继承方式，它们分别是：原型链继承，借用构造函数继承，组合继承，原型式继承，寄生式继承和寄生组合式继承。下面就是对着六种继承方式的详细介绍。1.原型]]></description><category></category></item><item><title><![CDATA[JavaScript之模块化编程]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78652353</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78652353</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 10:30:17 +0800</pubDate><description><![CDATA[前言 
模块是任何大型应用程序架构中不可缺少的一部分，模块可以使我们清晰地分离和组织项目中的代码单元。在项目开发中，通过移除依赖，松耦合可以使应用程序的可维护性更强。与其他传统编程语言不同，在当前JavaScript里，并没有提供原生的、有组织性的引入模块方式。本文就来探讨一下目前的常见几种模块化解决方案。1.对象字面量表示法 
对象字面量可以认为是包含一组键值对的对象，每一对键和值由冒号分隔。对象]]></description><category></category></item><item><title><![CDATA[JavaScript之作用域与闭包详解]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78652280</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78652280</guid><author>ca817586</author><pubDate>Tue, 28 Nov 2017 10:24:45 +0800</pubDate><description><![CDATA[前言： 
JavaScript是一种应用非常广泛的语言，其也有一些自身特点和优势，本文重在讲述其作用域机制以及闭包，会从一些实例来探讨其机理。作用域在JavaScript程序员日常使用中有不同的含义，如下所示：this绑定的值； 
this绑定的值定义的执行上下文； 
一个变量的“生命周期”； 
变量的值解析方案，或词法绑定。 
下面将讲诉JavaScript作用域概念，由此引出变量值解析方案的一般]]></description><category></category></item><item><title><![CDATA[封装一个小JS模块]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78647205</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78647205</guid><author>ca817586</author><pubDate>Mon, 27 Nov 2017 17:29:28 +0800</pubDate><description><![CDATA[在字典中,我们利用[键,值]的形式来存储数据,字典和集合很相似,集合以[值,值]的形式存储元素,字典以[键,值]的形式来存储元素,也成映射window.onload = function() {
            var dictionary = new Dictionary();
            dictionary.set('Baidu', 'www.baidu.com');]]></description><category></category></item><item><title><![CDATA[实现轮播图汇总]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78647060</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78647060</guid><author>ca817586</author><pubDate>Mon, 27 Nov 2017 17:18:31 +0800</pubDate><description><![CDATA[css与html部分 在此我就不大多描述了 主要分3层
最外面大盒子固定死宽高 给予属性overflow:hidden
第二层ul使其宽度比里面子标签li的宽度总和还要大
第三层li让其浮动fload:left, 并列在一行主要分析js部分实现理论
使用传统的定位属性来实现
// 封装一个动画函数
var actiontimer;
            function action(elemen]]></description><category></category></item><item><title><![CDATA[原型对象与原型链]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78646792</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78646792</guid><author>ca817586</author><pubDate>Mon, 27 Nov 2017 16:58:44 +0800</pubDate><description><![CDATA[/* 
    Function.prototype;//function() {} 
    Object.prototype;//Object {} 
    Number.prototype;//Number {[[PrimitiveValue]]: 0} 
    Boolean.prototype;//Boolean {[[PrimitiveValue]]: false} 
    Arr]]></description><category></category></item><item><title><![CDATA[JavaScript经典的排序方法]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78399731</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78399731</guid><author>ca817586</author><pubDate>Tue, 31 Oct 2017 09:34:34 +0800</pubDate><description><![CDATA[1> 插入排序基本思路：从无序区的第一个元素开始和它前面有序区的元素进行比较，如果比前面的元素小，那么前面的元素向后移动，否则就将此元素插入到相应的位置。Array.method('insertSort', function(){
    var len = this.length,
        i, j, tmp;
    for(i=1; i<len; i++){
        tmp =]]></description><category></category></item><item><title><![CDATA[vue的初步安装]]></title><link>https://blog.youkuaiyun.com/ca817586/article/details/78373735</link><guid>https://blog.youkuaiyun.com/ca817586/article/details/78373735</guid><author>ca817586</author><pubDate>Sat, 28 Oct 2017 10:40:04 +0800</pubDate><description><![CDATA[关于详细介绍,大家可以浏览了vue链接 
https://github.com/vuejs/vue-cli必须要有 Node.js (>=4.x, 6.x preferred), npm version 3+ and Git.的情况下第一步首先在cmd中下执行一下代码 
 npm install -g vue-cli第二步创建一个自己的根文件夹,在文件夹中打开cmd命令执行一下代码 
vue ini]]></description><category></category></item></channel></rss>