<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[JMisagirl的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/JMisagirl</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; JMisagirl]]></copyright><item><title><![CDATA[ES6 Class（类）]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106424618</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106424618</guid><author>JMisagirl</author><pubDate>Mon, 29 Jun 2020 16:45:51 +0800</pubDate><description><![CDATA[1. 严格模式

类和模块的内部，默认就是严格模式

2. 类不存在提升

与 ES5 不同，ES6 中，类不存在变量提升。这种规定的原因与继承有关，必须保证子类在父类之后定义。


{
  let Foo = class{};
  class Bar extends Foo{
  }
}

3. name 属性

总是返回紧跟在 class 关键字后面的类名

4. Generator 方法

若某个方法前加上 * ，就表示该方法是一个 Generator 函数。













...]]></description><category></category></item><item><title><![CDATA[ES6 Promise 对象（学习笔记）]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106335104</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106335104</guid><author>JMisagirl</author><pubDate>Tue, 26 May 2020 18:04:17 +0800</pubDate><description><![CDATA[1. Promise 的两个特点

（1）对象的状态不受外界影响。Promise 对象代表一个异步操作，有三种状态：pending(进行中)、fulfilled(已成功)、rejected(已失败)。只有异步操作的结果可以决定当前是哪一种状态，任何其他操作都无法改变这个状态。这个也是 Promise 这个名字的由来，代表只要“承诺”了便无法改变。

（2）一旦状态确定，就不会再变，任何时候都可以得到这个结果。Promise 对象的状态只有两种情况，从 pending 到 fulfilled 和从 pendi]]></description><category></category></item><item><title><![CDATA[ES6 Proxy 代理器与 Reflect]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106299165</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106299165</guid><author>JMisagirl</author><pubDate>Sat, 23 May 2020 17:02:39 +0800</pubDate><description><![CDATA[1. 概述

Proxy 用于修改某些默认行为，可以理解为在目标对象之前架设一层拦截，外界对该对象的访问，都必须通过这层拦截。因此提供了一种机制，用来对外界的访问进行过滤和改写。这种机制即代理器。

ES6 提供 Proxy 构造函数，用于生成 Proxy 实例


var proxy = new Proxy(target,handle);

//target 表示要拦截的对象
//handle 也是对象，表示拦截行为

下面是一个拦截读取属性行为的例子


var proxy = new Proxy({}]]></description><category></category></item><item><title><![CDATA[ES6 Set 和 Map 数据结构（学习笔记）]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106280385</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106280385</guid><author>JMisagirl</author><pubDate>Fri, 22 May 2020 17:49:45 +0800</pubDate><description><![CDATA[1. Set：类似于数组，但是成员唯一，没有重复的值。

（1）基本用法

Set 本身就是一个构造函数，用来生成 Set 数据结构


//例1
const s = new Set();

[2,3,4,5,2,3,4,5].forEach(x =&gt; s.add(x));

for (let i of s){
   console.log(i);
}
//2 3 4 5

//例2
const set = new Set([1,2,1,2]);
[...set]  //[1,2]

set.size]]></description><category></category></item><item><title><![CDATA[ES6 Symbol 数据类型（学习笔记）]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106272961</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106272961</guid><author>JMisagirl</author><pubDate>Fri, 22 May 2020 15:00:15 +0800</pubDate><description><![CDATA[1.概述

ES6 引入了一种新的数据类型 Symbol，是 JavaScript 的第七种数据类型，前六种为：null、undefined、boolean、number、string、object。Symbol 数据类型能保证每个属性的名字是独一无二的。

Symbol 值通过 symbol 函数生成，注意此时不能用 new 来生成，这是因为 Symbol 类型是原始数据类型，不是对象类型，因此它也不能添加属性。基本上 Symbol 类型类似于字符串类型。


let s = Symbol();
typ.]]></description><category></category></item><item><title><![CDATA[ES6 数组和对象的扩展]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106195314</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106195314</guid><author>JMisagirl</author><pubDate>Thu, 21 May 2020 12:14:53 +0800</pubDate><description><![CDATA[1.数组的扩展

（1）扩展运算符（...）：好比 rest 参数的逆运算，将一个数组转为用逗号分隔的参数系列。

只有函数调用时，扩展运算符才能放在圆括号中，否则会出错。


//例1
(...[1,2]); //Uncaught SyntaxError:Unexpected number

//例2
console.log((...[1,2]));   //Uncaught SyntaxError:Unexpected number

//例3
console.log(...[1,2]);   //1,]]></description><category></category></item><item><title><![CDATA[es6 数值和函数的扩展]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106154653</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106154653</guid><author>JMisagirl</author><pubDate>Sun, 17 May 2020 00:31:49 +0800</pubDate><description><![CDATA[1.数值的扩展

（1）Number.EPSILON：ES6 在 Number 对象上，新增一个极小的常量，表示 1 与 大于 1 的最小浮点数之差。

（2）Math.trunc()：去除一个数的小数部分，返回整数部分。

（3）Math.sign()：用来判断一个数是整数、负数还是零。

（4）Math.hypot()：返回所有参数的平方和的平方根

（5）Math.cbrt()：用于计算一个数的立方根。

（6）Math.clz32()：将参数转为 32 位无符号整数的形式，然后返回这个 32 位值里]]></description><category></category></item><item><title><![CDATA[ES6 字符串和正则的的扩展]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106140335</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106140335</guid><author>JMisagirl</author><pubDate>Sat, 16 May 2020 09:40:18 +0800</pubDate><description><![CDATA[1.字符串的扩展

（1）字符串的遍历器接口 for ...of


for (let codePoint of "foo")
{ 
   console.log(codePoint);  
}
//"f"
//"o"
//"o"

（2）JSON.stringify() 的改造

根据标准，JSON数据必须是 UTF-8 编码。但是现在的 JSON.stringify()方法可能返回不符合 UTF-8 标准的编码

JSON.stringify()的问题在于，它可能返回 0xD800到0xDFFF之间的.]]></description><category></category></item><item><title><![CDATA[ES6 let 和 const命令（学习笔记）]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/106101277</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/106101277</guid><author>JMisagirl</author><pubDate>Fri, 15 May 2020 13:38:53 +0800</pubDate><description><![CDATA[1.暂时性死区：只要块级作用域内有 let 命令，它所声明的变量就绑定（bounding）这个区域，不再受外部的影响。也就是说在代码块内使用 let 命令声明变量之前，该变量都是不可用的，在语法上，这被称为“暂时性死区”。


var tmp = 123;

if(true){
   console.log(tmp);  //ReferenceError
   let tmp;
}

ES6明确规定，如果区块中存在 let 和 const 命令，这个区块对这些命令声明的变量，从一开始就形成了封闭作用域，凡是]]></description><category></category></item><item><title><![CDATA[JS中的Promise 对象]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/105859384</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/105859384</guid><author>JMisagirl</author><pubDate>Thu, 30 Apr 2020 17:26:44 +0800</pubDate><description><![CDATA[1.概述

Promise对象是 JS 提供的异步操作解决方案，为异步操作提供统一接口。它起到代理作用（proxy）,充当异步操作与回调函数之间的中介，使得异步操作具备同步操作的接口。

2.Promise对象具有三种状态

（1）异步操作未完成（pending）

（2）异步操作成功（fulfilled）

（3）异步操作失败（rejected）

其中（2）fulflled 与（3）rejec...]]></description><category></category></item><item><title><![CDATA[JS 实例对象与New命令、原型对象、constructor属性、instanceof运算符、构造函数的继承、多重继承、Object对象]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/105812563</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/105812563</guid><author>JMisagirl</author><pubDate>Thu, 30 Apr 2020 00:19:15 +0800</pubDate><description><![CDATA[1、实例对象与New命令

（1）new命令的原理

若构造函数内部有 return 语句，并且 return 语句返回一个对象，new 命令会返回这个 return 语句，否则就会不管这个 return语句，返回 this 对象。

若return 语句返回的是跟 this 无关的对象，new 命令会返回这个新对象，而不是 this 对象。

若是内部没有 this 的普通构造函数使用 new ...]]></description><category></category></item><item><title><![CDATA[JavaScript string对象、Number对象、Date对象、正则对象、JSON对象]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/105759353</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/105759353</guid><author>JMisagirl</author><pubDate>Tue, 28 Apr 2020 14:08:30 +0800</pubDate><description><![CDATA[1.string对象

（1）String.fromCharCode()

参数为一个或数值，代表Unicode码点，返回值是这些码点组成的字符串。该方法不支持Unicode码点大于0xFFFF的字符，即十进制的65535.


String.formCharCode();     //""
String.fromCharCode(97);   //"a"
string.formCharCode(...]]></description><category></category></item><item><title><![CDATA[JavaScript 函数、闭包、Object 的实例方法、数组]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/105653409</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/105653409</guid><author>JMisagirl</author><pubDate>Sat, 25 Apr 2020 00:09:52 +0800</pubDate><description><![CDATA[1.函数

（1）函数参数传递方式

参数若是基本类型的值（数值、字符串、布尔值），则传递方式为值传递，在函数内部修改值不会影响到外部


var a = 3;

function f(_a){
    _a = 4;
}

f(a);

console.log(a);  // a = 3

参数若是复合类型的数据（数组，对象，其他函数），则参数传递方式为址传递，也就是说参数的地址被传到函数中，修...]]></description><category></category></item><item><title><![CDATA[JavaScript 数据类型、isNaN()方法、对象、变量提升、label标签]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/105580645</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/105580645</guid><author>JMisagirl</author><pubDate>Tue, 21 Apr 2020 10:57:30 +0800</pubDate><description><![CDATA[1.数据类型

基本数据类型：

2.变量提升（hoisting）

 JS在运行时会先获取被声明的变量，就是把所有变量被声明的语句提升到代码的头部，这就是变量提升。

3.label标签（通常与break和continue配合使用，跳出特定循环）


top:
for(var i = 0;i &lt; 10;i++){
  for(var j = 0;j &lt; 10;j++){
     ...]]></description><category></category></item><item><title><![CDATA[eclipse创建java类时出错creation of element failed.malformed]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/80960899</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/80960899</guid><author>JMisagirl</author><pubDate>Sun, 08 Jul 2018 17:25:07 +0800</pubDate><description><![CDATA[eclipse创建java resources类的时候出现creation of element failed.malformed百度上的方法跟着做了也一样错误，新手求赐教。]]></description><category></category></item><item><title><![CDATA[初次创建andriod项目出现的问题]]></title><link>https://blog.youkuaiyun.com/JMisagirl/article/details/79511874</link><guid>https://blog.youkuaiyun.com/JMisagirl/article/details/79511874</guid><author>JMisagirl</author><pubDate>Sat, 10 Mar 2018 21:24:31 +0800</pubDate><description><![CDATA[第一次学习用eclipse创建andriod项目，按照教程下载了ADT,SDK并且安装好了，但是在创建项目的时候未出现v7包。于是按照网上从SDK中复制出v7包导入，但是不知道为什么不能导入。请各位大神赐教！！！...]]></description><category></category></item></channel></rss>