<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[LH552315的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/LH552315</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; LH552315]]></copyright><item><title><![CDATA[Promise]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326560</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326560</guid><author>LH552315</author><pubDate>Fri, 23 Jun 2017 13:54:00 +0800</pubDate><description><![CDATA[概念
Promise是一个容器，用于保存异步操作的最终完成情况（成功or失败）
语法
new Promise(
function(resolve,reject) {
}
)
我们稍作分析 Promise是一个系统内置的构造函数，new Promise的时候传入一个带有resolve和reject两个参数的函数
函数在Promise构造函数执行时同步执行，被传递resolve和reject...]]></description><category></category></item><item><title><![CDATA[精通JavaScript第二章——可复用的代码]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326558</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326558</guid><author>LH552315</author><pubDate>Thu, 22 Jun 2017 21:22:00 +0800</pubDate><description><![CDATA[我们应该把原型链看做一种委托关系而非类的父子关系，A继承与B，A没有的属性委托给B。原型链就是一种委托机制，允许我们将行为委托给链上更远的一环来处理
var person = {
  name:"john",
  age:"100",
  job:"teacher",
  getAge:function() {return this.age},
  toString:function()...]]></description><category></category></item><item><title><![CDATA[精通JavaScipt第二版笔记——特性、函数和对象]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326561</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326561</guid><author>LH552315</author><pubDate>Wed, 21 Jun 2017 22:53:00 +0800</pubDate><description><![CDATA[前言：感觉这本书只有第二章 第三章有点看头
基本类型和引用类型

基本类型：字符串 数字 布尔值 null(待确定) undifined
引用类型：对象 数组

引用传递 保存的只是对象的地址
var obj = {};
var obj1 = obj;
obj.name="hey";
obj.name === obj1.name
自修改对象
var items = [1,2,3];
va...]]></description><category></category></item><item><title><![CDATA[javascript——call]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326559</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326559</guid><author>LH552315</author><pubDate>Thu, 20 Apr 2017 14:14:00 +0800</pubDate><description><![CDATA[可以让call()中的对象调用当前对象所拥有的function。

var age = 5;
function foo() {
  alert(this.age)
}
foo.call(this)



转载于:https://www.cnblogs.com/Tjinhui/p/6738507.html...]]></description><category></category></item><item><title><![CDATA[input type="submit" 和"button"有什么区别？]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326556</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326556</guid><author>LH552315</author><pubDate>Mon, 17 Apr 2017 15:28:00 +0800</pubDate><description><![CDATA[在一个页面上画一个按钮，有四种办法：

&lt;input type="button" /&gt; 这就是一个按钮。如果你不写javascript 的话，按下去什么也不会发生。
&lt;input type="submit" /&gt; 这样的按钮用户点击之后会自动提交 form，除非你写了javascript 阻止它。
 &lt;button&gt; 这个按钮放在 form 中...]]></description><category></category></item><item><title><![CDATA[onclick = xxx这种赋值写法绑定事件的原理是什么？]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326557</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326557</guid><author>LH552315</author><pubDate>Thu, 13 Apr 2017 17:11:00 +0800</pubDate><description><![CDATA[本文转自知乎貘吃馍香的回答
提问：刚入门不久，能力有限，这个问题我描述起来有点困难，只有劳烦各位大神细看了我之前一直以为js底层存在类似下面这样的代码：

//给所有dom对象定义好onclick值为一个空函数
HTMLElement.prototype.onclick = function(){};

//给所有dom对象绑定默认点击回调函数：点击时都执行一次自己的oncl...]]></description><category></category></item><item><title><![CDATA[iterable]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326554</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326554</guid><author>LH552315</author><pubDate>Tue, 11 Apr 2017 17:32:00 +0800</pubDate><description><![CDATA[iterable
阅读: 148111


遍历Array可以采用下标循环，遍历Map和Set就无法使用下标。为了统一集合类型，ES6标准引入了新的iterable类型，Array、Map和Set都属于iterable类型。
具有iterable类型的集合可以通过新的for ... of循环来遍历。
for ... of循环是ES6引入的新的语法
用for ... of循环...]]></description><category></category></item><item><title><![CDATA[Map和Set]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326555</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326555</guid><author>LH552315</author><pubDate>Tue, 11 Apr 2017 17:24:00 +0800</pubDate><description><![CDATA[JavaScript的默认对象表示方式{}可以视为其他语言中的Map或Dictionary的数据结构，即一组键值对。
但是JavaScript的对象有个小问题，就是键必须是字符串。但实际上Number或者其他数据类型作为键也是非常合理的。
为了解决这个问题，最新的ES6规范引入了新的数据类型Map。
Map
Map是一组键值对的结构，具有极快的查找速度。
举个例子，假设要根据...]]></description><category></category></item><item><title><![CDATA[进程和线程]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326552</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326552</guid><author>LH552315</author><pubDate>Tue, 11 Apr 2017 09:42:00 +0800</pubDate><description><![CDATA[很多同学都听说过，现代操作系统比如Mac OS X，UNIX，Linux，Windows等，都是支持“多任务”的操作系统。
什么叫“多任务”呢？简单地说，就是操作系统可以同时运行多个任务。打个比方，你一边在用浏览器上网，一边在听MP3，一边在用Word赶作业，这就是多任务，至少同时有3个任务正在运行。还有很多任务悄悄地在后台同时运行着，只是桌面上没有显示而已。
现在，多核CPU已经非...]]></description><category></category></item><item><title><![CDATA[javascript 函数的多义性]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326553</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326553</guid><author>LH552315</author><pubDate>Sun, 09 Apr 2017 17:34:00 +0800</pubDate><description><![CDATA[所谓多义性指的是一种语法多种概念，多种用法。javascript function有三个概念三种用法
1 直接当函数被调用
function foo() {...} 
foo()
2 在函数下挂载静态函数
foo.name = "hello" ;
foo.age = function(){return 101};
3 被当做构造函数
var a = new foo()
...]]></description><category></category></item><item><title><![CDATA[如何判断Javascript对象是否存在]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326549</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326549</guid><author>LH552315</author><pubDate>Sun, 09 Apr 2017 08:09:00 +0800</pubDate><description><![CDATA[Javascript语言的设计不够严谨，很多地方一不小心就会出错。
举例来说，请考虑以下情况。
现在，我们要判断一个全局对象myObj是否存在，如果不存在，就对它进行声明。用自然语言描述的算法如下：

if (myObj不存在){
　　　　声明myObj;
　　}

你可能会觉得，写出这段代码很容易。但是实际上，它涉及的语法问题，远比我们想象的复杂。Juriy Zayts...]]></description><category></category></item><item><title><![CDATA[什么是javascript的回调函数？]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326550</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326550</guid><author>LH552315</author><pubDate>Sat, 08 Apr 2017 22:18:00 +0800</pubDate><description><![CDATA[回调函数(callback) 基本上每本书里都会提一提实际上我们几乎每天都在用回调函数，那么如果问你到底什么是回调函数呢？
1. 回调函数是作为参数传递给另一个函数    2. 函数运行到某种程度时，执行回调函数
3 回调函数是异步的


为什么需要回调函数：     异步：一般ajax请求都是异步的。请求发出去后，处理器会继续执行下面的代码。如果你想ajax请求完成后，做一些...]]></description><category></category></item><item><title><![CDATA[什么是javascript中的静态方法？一个例子让你懂~！]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326547</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326547</guid><author>LH552315</author><pubDate>Sat, 08 Apr 2017 17:59:00 +0800</pubDate><description><![CDATA[function Foo(){  this.age = 28};var a = new Foo();alert(a.age);//28alert(a.name);//undifined
Foo.name = function(){console.log("hello")}

静态属性不能被实例对象调用，即通过以new 操作符实例化后的对象调用，如上例中的a调用，只能通过类名调用...]]></description><category></category></item><item><title><![CDATA[@import]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326546</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326546</guid><author>LH552315</author><pubDate>Sat, 08 Apr 2017 09:53:00 +0800</pubDate><description><![CDATA[引用CSS资源有两种方式，一种是link 一种是@import
对于Link 但凡用过css的人应该都很了解了，今天说下css另外一种引用方式@import，@import可以在css文件中引入其他的css文件。


&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta chars...]]></description><category></category></item><item><title><![CDATA[一行文本实现两端对齐]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326548</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326548</guid><author>LH552315</author><pubDate>Wed, 29 Mar 2017 17:39:00 +0800</pubDate><description><![CDATA[一直嵌套多层标签或者直接简单粗暴+&amp;nbsp;解决。昨天发现两种直接用CSS就能搞定的方法分享给大家
第一种方法：
 display:inline-block;
 text-align:cemter;
 text-align-last:justify;
第二种方法直接用flex弹性盒子
 display:flex;
 justify-content:s...]]></description><category></category></item><item><title><![CDATA[javascript的getter和setter（转）]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326545</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326545</guid><author>LH552315</author><pubDate>Tue, 28 Mar 2017 13:37:00 +0800</pubDate><description><![CDATA[显然这是一个无关IE（高级IE除外）的话题，尽管如此，有兴趣的同学还是一起来认识一下ECMAScript5标准中getter和setter的实现。在一个对象中，操作其中的属性或方法，通常运用最多的就是读（引用）和写了，譬如说o.get，这就是一个读的操作，而o.set = 1则是一个写的操作。事实上在除ie外最新主流浏览器的实现中，任何一个对象的键值都可以被getter和setter方法...]]></description><category></category></item><item><title><![CDATA[javascript核心概念之——数组]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326544</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326544</guid><author>LH552315</author><pubDate>Thu, 23 Mar 2017 15:02:00 +0800</pubDate><description><![CDATA[在javascript中数组就是一个可以存放任何类型的集合。存储在数组中的值用逗号分隔

var arr = ["hello",7,null,undifined,obj,undifined];
var obj = {};
function foo(){
  ....
}

数组也是对象，拥有对象所拥有的特性

            var arr = [];
  ...]]></description><category></category></item><item><title><![CDATA[text-decoration:underline与字体重叠]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326543</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326543</guid><author>LH552315</author><pubDate>Wed, 22 Mar 2017 22:55:00 +0800</pubDate><description><![CDATA[前几天工作遇到了字体与underline下划线重叠的问题，折腾了半天。今天在张鑫旭的博客上找到了几种解决方法分享一下
1 text-decoration-skip：不推荐使用 17年了这个属性支持率依然感人
2 border-bottom：内联元素虽然不支持垂直方向的margin属性但是支持垂直方向的padding和border

&lt;style&gt;
  .demo{...]]></description><category></category></item><item><title><![CDATA[严格模式下的javascript]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326538</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326538</guid><author>LH552315</author><pubDate>Tue, 21 Mar 2017 05:27:00 +0800</pubDate><description><![CDATA[arguments:
ECMA5移除了实参对象（arguments），在非严格模式下函数里的arguments只是一个标识符，在严格模式下它变成了保留字。严格模式下无法使用arguments作为形参名或局部变量名也不能给它赋值
callee caller:
在ECMA5中对这两个属性的读写会产生一个类型错误。

转载于:https://www.cnblogs.com/Tjinhui...]]></description><category></category></item><item><title><![CDATA[javascript核心概念——new]]></title><link>https://blog.youkuaiyun.com/LH552315/article/details/101326534</link><guid>https://blog.youkuaiyun.com/LH552315/article/details/101326534</guid><author>LH552315</author><pubDate>Sat, 18 Mar 2017 20:13:00 +0800</pubDate><description><![CDATA[如果完全没有编程经验的朋友看到这个词会想到什么？ 上过幼儿园的都知道new表示 "新的" 的意思。
var a = new Date() 按照字面的意思表示什么？ 把一个新的date赋值给了a，a就是一个新的date类型的实例。
理解到这已经差不多了已经初步掌握了js中new的概念。接下来我们看一下MDN对new操作符的定义：
(newoperator) 新运算符创建一个用户定义...]]></description><category></category></item></channel></rss>