安装依赖
// postcss加载器
npm install postcss postcss-loader -D
// postcss插件
npm install autoprefixer -D
配置文件
postcss.config.js
module.exports = {
    p[......]
					// postcss加载器
npm install postcss postcss-loader -D
// postcss插件
npm install autoprefixer -D
postcss.config.js
module.exports = {
    p[......]
					setter方法及getter方法。let object = {
    name: 'sian',
    age: 18
}
O[......]
					
Access to XMLHttpRequest at 'http://127.0.0.1:3000/' from origin 'http://localhost:3000' has been blocked by CORS policy: Response to preflig[......]
本来是想说说生成器Generator的,但我发现和迭代有关,所以要先讲讲迭代器Iterator,可迭代器又会扯到Symbol,所以拉出来一起说说;
Symbol是ES6引进的一种新数据类型,它代表一个独一无二的值,至此JavaScript一共有7种数据类型,分别是:Undefinded、String、Symbol、Object、Null、Number、boolean。
Symbol到底是什么?先来个栗子看看效果:
let s1 = Symbol();
let s2 = Symbol();
console.log(s1, typeof s1); // Symbol() "symbol"
console.log(s1 === s2); // false
let s3 = Symbol('symbol');
let s4 = Symbol('symbol');
console.log(s3, s4);    // Symbol(symbol) Symbol(symbol)
console.log(s3 === s4); // false
let s5 = Symbol.for('symbol');
let s6 = Symbol.for('symbol');
console.log(s5, s6);    // Symbol(symbol) Symbol(symbol)
console.log(s5 === s6); // true
console.log(s4 === s5); // false
new关键字;既然Symbol的特性代表独一无二,那典型的应用场景就是需要唯一性的场所,比如说枚举值、对象的属性名或方法名等。
* 以性别为例,我们定义一个gender对象,分别有male和female两个属性,我们在应用的时候可能只需要区分这两者不一样即可,并不关心他们实际值是多少,可以将值设置为Symbol类型。(如果需要与服务端交互另说,这里主要是为了说明Symbol的用法,勿喷)
// 性别:常规定义
const gender = {
    male: 'male',   // 男
    female: 'female'    // 女
}
// 性别:Symbol定义
const gender = {
    male: Symbol(),
    female: Symbol()
}
person对象,我想扩展一个方法,但又不确定新加的方法名是否会引起冲突,所以使用Symbol类型的值做为方法名// person对象
let person = {
    name: 'yusian',
    age: 21,
    say() {
        console.log('saying...');
    }
}
// 自定义方法名
let methods = {
    say: Symbol('say'),
    run: Symbol('run')
}
person[methods.say] = function () {
    console.log('symbol saying...');
}
person[methods.run] = function () {
    console.log('symbol running...');
}
person.say();   // saying...
person[methods.say]();  // symbol saying...
person[methods.run]();  // symbol running...
Symbol.hasInstance为例,定义一个Person类,在类中定义一个静态方法名为Symbol.hasInstance,那么当对该类进行instanceof调用时就会执行该静态方法,返回值即为调用返回结果。class Person {
    // 方法名一般为字符串,Symbol类型做为方法名需要加方括号
    static [Symbol.hasInstance] = function (foo) {
        console.log('hasInstance, ', foo);
        return false;
    }
}
let p = new Person();
console.log(p instanceof Person);   // false
参考链接:阮一峰ES6入门
[……]
XMLHttpRequest是WebAPI中的标准对象,可发起Ajax请求。三步曲:
* 创建XMLHttpRequest对象;
* open方法设置请求方式及url地址;
* send方法正式发起请求;
<script>
    let xhr =[......]