koa2入门--01.ES6简单复习、koa2安装以及例子
1.ES6简单复习
/*let 和 const: let用于定义一个块作用域的变量,const 定义一个常量 */
let a = 'test';
const b = 2; /*对象的属性和方法的简写: */
/* ES5写法: */
var name = 'test';
var es5Ojb = {
name:name,
func:function(){ }
};
/* ES6对象属性和方法写法: */
var obj = {
name,
func(){ }
}; /* 箭头函数 */
/* ES5匿名函数写法:*/
function es5Test(){
return function(){
console.log('es5Test');
};
};
/* ES6写法: */
function es6Test(){
return ()=>{
console.log('es6Test');
};
}; /* 用Promise处理回调函数*/
//ES6:函数形参的数据类型为一个函数,在函数体内调用该形参,并传参,在函数体外执行该函数,并写入函数,比如下面
var p = new Promise((reslove,reject)=>{
//模仿异步函数
setTimeout(()=>{
var name = '张三';
if(Math.random()<0.7)
reslove(name);
else
reject('失败'); },1000);
});
/* data为reslove或者reject传进的参数 */
p.then((data)=>{
console.log(data);
});
/*
aysnc function function_name(){} 能够将函数转为异步执行
*/
async function getData(){
return '将函数转为异步执行';
}; /*
获取异步函数执行的数据,方法一:
*/
var p = getData();
p.then((data)=>{
console.log(data); //将函数转为异步执行
}); // 获取异步函数执行的数据,方法二:await ,能够获取等待异步函数执行,并获取异步函数里的数据,await能够将函数改为同步,await只能在异步函数里使用
async function test(){
var d = await getData();
console.log(p);
}; test();// 将函数转为异步执行 //async 与 await 组合,能够在async异步函数里,使用await等待其他异步函数执行完成并来获取其他异步函数里的数据,再执行下面的语句,例:
function other_async(){
//模仿异步函数
return new Promise((reslove,reject)=>{
setTimeout(()=>{
var username = '张三';
reslove(username);
},1000);
});
}; async function test(){
var data = await other_async();
console.log(data);
};
test(); // 张三
2、koa2 安装:在文件夹内打开cmd ,输入: npm install --save koa ,注意:只有node.js版本在7.2以上才可以使用,使用 node -v 命令即可查看node版本
const koa = require('koa');
const app = new koa(); app.use( async(ctx)=>{ ctx.body = 'hello koa2';
}); app.listen(80);
效果:
koa2入门--01.ES6简单复习、koa2安装以及例子的更多相关文章
- koa2源码解读及实现一个简单的koa2框架
阅读目录 一:封装node http server. 创建koa类构造函数. 二:构造request.response.及 context 对象. 三:中间件机制的实现. 四:错误捕获和错误处理. k ...
- JavaScript基础入门 - 01
JavaScript入门 - 01 准备工作 在正式的学习JavaScript之前,我们先来学习一些小工具,帮助我们更好的学习和理解后面的内容. js代码位置 首先是如何编写JavaScript代码, ...
- 034 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 01 流程控制概述
034 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 01 流程控制概述 本文知识点:Java中的流程控制相关概念的认识 三大流程控制语句结构的简介 顺序 ...
- 003 01 Android 零基础入门 01 Java基础语法 01 Java初识 03 Java程序的执行流程
003 01 Android 零基础入门 01 Java基础语法 01 Java初识 03 Java程序的执行流程 Java程序长啥样? 首先编写一个Java程序 记事本编写程序 打开记事本 1.wi ...
- 002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介
002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介 学习Java的基础语法 Java是一门编程语言,学习的逻辑其实和现实世界的语言是一样的,需要了 ...
- 【JavaScript】JS从入门到深入(复习查漏向
[JavaScript]JS从入门到深入(复习查漏向 pre 精细得学过一遍JS后才发现,原来之前CTF中有些nodejs的题目以及一些游戏题的payload就变得很好理解了. 基础知识 ECMASc ...
- VS2010/MFC编程入门之一(VS2010与MSDN安装过程图解)
原文地址: VS2010/MFC编程入门之一(VS2010与MSDN安装过程图解)-软件开发-鸡啄米 http://www.jizhuomi.com/software/139.html 上一讲中鸡 ...
- (转)Web Service入门简介(一个简单的WebService示例)
Web Service入门简介 一.Web Service简介 1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从I ...
- 不用搭环境的10分钟AngularJS指令简易入门01(含例子)
不用搭环境的10分钟AngularJS指令简易入门01(含例子) `#不用搭环境系列AngularJS教程01,前端新手也可以轻松入坑~阅读本文大概需要10分钟~` AngularJS的指令是一大特色 ...
随机推荐
- SQL Server 记录(更新中...)
sys.databases 显示所有数据库信息 sys.tables 显示当前数据库所有的表的信息 Go 向 SQL Server 实用工具发出一批 Transact-SQL 语句已结束的信号,Go本 ...
- docker search
命令:docker search [root@iZ943kh74qgZ ~]# docker search --help Usage: docker search [OPTIONS] TERM Sea ...
- lower_bounder()和upper_bound()的函数
lower_bound() .upper_bound()都运用于有序区间的二分查找. ForwardIter lower_bound(ForwardIter first, ForwardIter la ...
- Libevent:3创建event_base
在使用Libevent函数之前,需要分配一个或多个event_base结构.每一个event_base都持有一个events的集合,并且可以检测那些events是激活的. 如果设置event_base ...
- 【C++】STL,vector容器操作
C++内置的数组支持容器的机制,但是它不支持容器抽象的语义.要解决此问题我们自己实现这样的类.在标准C++中,用容器向量(vector)实现.容器向量也是一个类模板.标准库vector类型使用需要的头 ...
- java 简单实现FtpClient
1. 引入喜闻乐见的maven地址 <dependency> <groupId>commons-net</groupId> <artifactId>co ...
- Vue电商后台管理系统项目第1天-基本环境搭建&登录功能
基本环境搭建完成 安装npm包:npm -S i vue vue-router axios element-ui 配置Eslint: 打开设置,搜索Eslint拓展,然后将下面代码覆盖进去即可 { , ...
- Python学习(四)cPickle的用法
python中有两个类似的:pickle与cPickle:两者的关系:“cPickle – A faster pickle” pickle模块中的两个主要函数是dump()和load().dump() ...
- es6 默认参数、rest参数、扩展运算符
1.默认值 现在可以在定义函数的时候指定参数的默认值了,而不用像以前那样通过逻辑或操作符来达到目的了. function sayHello(name){ //传统的指定默认参数的方式 var name ...
- Android Listview中Button按钮点击事件冲突解决办法
今天做项目时,ListView中含有了Button组件,心里一早就知道肯定会有冲突,因为以前就遇到过,并解决过,可惜当时没有记录下来. 今天在做的时候,继续被这个问题郁闷了一把,后来解决后,赶紧来记录 ...