模块化

作者: 飞奔的小白 | 来源:发表于2019-06-26 08:34 被阅读0次
{
  "name": "webpack-test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "webpack",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "babel-core": "^6.26.3",
    "babel-loader": "^7.1.2",
    "babel-preset-es2015": "^6.24.1",
    "babel-preset-latest": "^6.24.1",
    "webpack": "^3.11.0"
  }
}

开启一个本地服务

npm install http-server -g

http-server -p 8881

Promise语法

function loadImg(src){
  const promise = new Promise(function(resolve,reject){
    var img = document.createElement('img');
    img.onload = function(){
      resolve(img);
    }
    img.onerror = function(){
      reject()
    }
    img.src = src
  })
  return promise;
}
 var src = '#';
  result.then(function (img) {
    console.log(img.width);
  }, function () {
    console.log('failed');
  })
  result.then(function (img) {
    console.log(img.height);
  })

new Promise 实例,而且要return
new Promise时传入函数,函数resolve reject 两个参数
成功时执行resolve()失败执行reject()
then监听结果

  // let / const
  // JS
  var i = 10;
  i = 100;
  var j = 20;
  j = 200;

  // ES6
  let i = 10;
  i = 100; //正确
  const j = 20;
  j = 200; //报错

  // 多行字符串和模板解析
  // js
  var name = 'zhansan',
    age = 20,
    html = '';
  html += '<div>';
  html += ' <p>' + name + '</p>';
  html += ' <p>' + age + '</p>';
  html += '</div>';
  // es6
  const name = 'zhansan',age =20;
  const html = `
        <div>
            <p>${name}</p>
            <p>${age}</p>
        <div>
  `;
 // 解构赋值
  // js
  var obj = {a:100,b:200}
  var a = obj.a;
  var b = obj.b;

  var arr = ['xxx','yyy','zzz'];
  var x = arr[0];
  var z = arr[0];

  // es6
  const obj = {a:100,b:200};
  const {a,b} = obj;
  const arr = ['xxx','yyy','zzz'];
  const [x,y,z] = arr;
 // 块级作用域
  // js
  var obj = {a:100,b:200}
  for(var item in obj){
    console.log(item)
  }
  console.log(item); 'b'
  // es6
  const obj = {a:100,b:200}
  for(let item in obj){
    console.log(item)
  }
  console.log(item); //undefined
// 函数默认参数
  // js
  function a(a,b){
    if(b == null){
      b=0
    }
  }
  // es6
  function a(a,b=0){

  }
  // 箭头函数
  var arr = [1,2,3];
  arr.map(function(item){
    return item + 1
  })
  const arr = [1,2,3,4];
  arr.map(item => item +1);
  arr.map((item,index) => {
    console.log(index);
    return item + 1;
  })
  function fn(){
    console.log('real',this); //{a:100}
    var arr = [1,2,3];
    // 普通 JS
    arr.map(function(item){
      console.log('js',this); //window
      return item + 1;
    })
    // 箭头函数
    arr.map(item =>{
      console.log('es6',this);//{a:100}
      return item + 1;
    })
  }

  fn.call({a:100})

总结-es6常用功能

let/const
多行字符串/模板变量
解构赋值
块级作用域
函数默认参数
箭头函数

相关文章

  • ES6学习笔记 II

    模块化 注意:模块化需要放到服务器环境使用模块化: 定义模块化如下 export export const a =...

  • 前端开发——模块化(css模块化开发)

    掌握模块化开发的思想是我们进行模块化开发的基础。他有以下几部分组成: 模块化开发的优势 css模块化 css模块化...

  • Node.js模块化学习

    模块化的基本概念Node.js 中模块化npm与包模块的加载机制 模块化的基本概念 什么是模块化 模块化是指解决一...

  • webpack基础笔记

    webpack基础 1.前端工程化 实际的前端开发: 模块化:(js的模块化,css的模块化,资源的模块化) 组件...

  • 模块化开发

    js模块化开发vue模块化开发

  • Vue前端工程化

    1.模块化的分类 A.浏览器端的模块化 B.服务器端的模块化 C.ES6模块化 小结:推荐使用ES6模块化,因为A...

  • 前端工程化

    1.模块化的分类 A.浏览器端的模块化 B.服务器端的模块化 C.ES6模块化 小结:推荐使用ES6模块化,因为A...

  • vue5

    es6新内容 class 解构赋值 扩展对象 模块化 什么是模块化 模块的作用 怎么实现模块化 模块化的标准 Co...

  • Vue基础教程之-组件核心概念(四)

    一、模块化 1.1 为什么需要模块化 没有模块化的世界:全局变量污染、难以管理的依赖。常见的模块化标准:Commo...

  • vue项目基建

    路由模块化 , 高频全局组件模块化 权限

网友评论

      本文标题:模块化

      本文链接:https://www.haomeiwen.com/subject/ryttcctx.html