最近学习汇报

10-12

1.  网游加速器原理、技术与实现

http://blog.csdn.net/kidwei/article/details/8559842

 

10-19

1.百度前端学院

http://ife.baidu.com/

 

10-20

1.学一下canvas,想学webGl,nodejs,docker等慢慢来,一点一点啃

2.投论文,看论文

 

11-24

1. es6的async函数学习https://segmentfault.com/a/1190000008677697

 

https://koa.bootcss.com/#

 

Functional JavaScript Mini Book 函数式JS编程

11-25

es6的async函数学习https://segmentfault.com/a/1190000008677697

 

https://koa.bootcss.com/#

 

Promise,Generator(生成器),async(异步)函数

http://www.cnblogs.com/libin-1/p/6917097.html        

 

 

http://www.ruanyifeng.com/blog/2015/04/generator.html

 

进程与线程的一个简单解释

http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html

 

函数柯里化和thunk

https://blog.oyanglul.us/javascript/functional-javascript.html#sec-2-2

http://blog.csdn.net/u010552788/article/details/50850453

 

11-27

函数执行不延时的原因一般是直接调用了函数  function a(){};

setTimeout(a(),1000);//会直接执行

setTimeout(a,1000)//正常执行,如果需要参数怎么办

 

setTimeout(function(){

a(ss);

},1000)//这样写是最好的。

 

var alice = {

name: "alice11",

toString: function () {

return this.name;

},

hehe:"123"

}

 

var smith = {

name: "smith",

toString: function () {

return this.name;

}

}

 

alert(alice.hehe || smith);         // 123

 

06.js 这句是多余的?

app.use(main);

alert(alice || smith);              // alice

 

 

11.30

1.廖雪峰koa

https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001471133885340dad9058705804899b1cc2d0a10e7dc80000

 

2.KOA实战

http://book.apebook.org/minghe/koa-action/xtemplate/xtemplate.html

 

3.koa Views

http://www.ituring.com.cn/article/274839

 

4.koa应用程序由中间件组成

5.学习node

6.next() KOA里用来转交执行权

7.迭代器里的next用来分段执行generator

8.await 协程 交出函数执行权

await next()

next()

9.npm --save-dev

 Npm uninstall xx

10.koa模板引擎 koa-views  Nujucks xtemplate ejs

 

 

12.1

1. Node.js的模块中exports的理解

https://segmentfault.com/q/1010000004008530

2. 使用Node.js和Koa框架实现前后端交互

http://www.jianshu.com/p/0060d2d9b533

3.地址

http://127.0.0.1:3000/?page=1&cityId=1

  TypeError: "string" must be a string, Buffer, or ArrayBuffer

可能是返回值的问题 (ctx.body)

4.http request (nodeJs 发送http请求)

注意,在例子中调用了 req.end()。 使用 http.request() 必须总是调用 req.end() 来表明请求的结束,即使没有数据被写入请求主体。

5.queryString

require('querystring');

6.

'data' 事件#

查看英文版 / 查看英文md文件 / 编辑中文md文件

新增于: v0.9.4

chunk <Buffer> | <string> | <any> 数据片段。对于非对象模式的可读流,这是一个字符串或者 Buffer。 对于对象模式的可读流,这可以是除 null 以外的任意类型 JavaScript 值。

'data' 事件会在流将数据传递给消费者时触发。当流转换到 flowing 模式时会触发该事件。调用 readable.pipe(), readable.resume() 方法,或为 'data' 事件添加回调可以将流转换到 flowing 模式。 'data' 事件也会在调用 readable.read() 方法并有数据返回时触发。

在没有明确暂停的流上添加 'data' 事件监听会将流转换为 flowing 模式。 数据会在可用时尽快传递给下个流程。

如果调用 readable.setEncoding() 方法明确为流指定了默认编码,回调函数将接收到一个字符串,否则接收到的数据将是一个 Buffer 实例。

const readable = getReadableStreamSomehow();

readable.on('data', (chunk) => {

  console.log(`Received ${chunk.length} bytes of data.`);

});

7.怀疑resolve出去的value有长度限制

 

 

 

 

12.3

1. http://blog.csdn.net/qq_16515187/article/details/78345880

对thunk函数的理解

2.

'end' 事件#

查看英文版 / 查看英文md文件 / 编辑中文md文件

新增于: v0.9.4

'end' 事件将在流中再没有数据可供消费时触发。

注意: 'end' 事件只有在数据被完全消费后 才会触发 。 可以在数据被完全消费后,通过将流转换到 flowing 模式, 或反复调用 stream.read() 方法来实现这一点。

const readable = getReadableStreamSomehow();
readable.on('data', (chunk) => {
  console.log(`Received ${chunk.length} bytes of data.`);
});
readable.on('end', () => {
  console.log('There will be no more data.');
});

3.koa版本不同导致了巨大的问题

报错①this.set not a function

         ②String must be string buffer or arraybuffer

         ③cb到底是什么?

4.yield后面可以跟thunk函数

 

12-5

1. Generator 函数 - 基本概念

http://blog.csdn.net/github_26672553/article/details/53993581

必须调用遍历器对象的next方法,似的指针移动到下一个状态。也就是说,每次调用next方法,内部指针就从函数头部或上一次定下来的地方开始执行,直到遇到下一个yield语句(或return语句)为止。换言之,Generator函数是分段执行的,yield语句是暂停执行的标记,而next方法可以恢复执行。

2. ES6-深入理解Generator yield & Koa中间件执行顺序

http://blog.csdn.net/qiqingjin/article/details/51921331

3.yield与await的区别

4.cb函数怎么回事

Cb类比于resolver?

解答一:

这个要看co模块的源码 ,yield后面如果跟的是一个chunk函数,co会把它包装成一个Promise对象

function thunkToPromise(fn) {

  var ctx = this;

  return new Promise(function (resolve, reject) {

    fn.call(ctx, function (err, res)/* 这个就是cb函数 */{

     

      if (err) return reject(err);

      if (arguments.length > 2) res = slice.call(arguments, 1);

      resolve(res);

    });

  });

}

 

Thunk 函数

http://blog.csdn.net/fendouzhe123/article/details/50426156

thunk函数

在co的应用中,为了能像写同步代码那样书写异步代码,比较多的使用方式是使用thunk函数(但不是唯一方式,还可以是:Promise)。比如读取文件内容的一步函数fs.readFile()方法,转化为thunk函数的方式如下:

[javascript] view plain copy

function readFile(path, encoding){  

    return function(cb){  

        fs.readFile(path, encoding, cb);  

    };  

}  

那什么叫thunk函数呢?

thunk函数具备以下两个要素:

有且只有一个参数是callback的函数;

callback的第一个参数是error。

 

 

5.http.request的response是一个http.IncomingMessage类

6.为什么用await/promise后无法全部接收

数据流应该写在end里面

写在data里只是数据流,不完整

 

12-6

1. Express细节探究(1)——app.use(express.static)

http://www.cnblogs.com/A-dam/p/5053299.html

2.KOA引擎 CSS加载的问题?

3.本地webà服务器web ①静态资源部署 ②render?

4. 逗号运算符 https://www.cnblogs.com/liubeimeng/p/5505138.html

 

12-7

1. HTML <a> 标签的 href 属性
超链接的 URL。可能的值:

绝对 URL - 指向另一个站点(比如 href="http://www.example.com/index.htm")

相对 URL - 指向站点内的某个文件(href="index.htm")

锚 URL - 指向页面中的锚(href="#top")

2. 前端视频播放初探总结,video标签-视频插件jwplayer

http://blog.csdn.net/future_todo/article/details/52683932

https://www.cnblogs.com/webenh/p/5815741.html

3.UTC时间

UTC时间实际上是一串以自1970年以来的毫秒数表示的长数字。

 

12-8

1. 关于文字内容溢出用点点点(...)省略号表示

http://www.zhangxinxu.com/study/200909/text-overflow-ellipsis-so-on.html

ellipsis

显示省略符号来代表被修剪的文本。

Text-overflow: ellipsis

还需要overflow:hidden进行修剪才行

 

1-2

问题:

王建丰的视频播放页

一:(未打包node模块)使用步骤

①npm install

②node main/main.js

③127.0.0.1:3000/?topicId=2&cityId=1

二:说明

因为接口是移动端的所以就写的移动端适配的视频播放页面

三:问题

①KOA引擎 CSS加载的问题

我在模板html文件里用<link>引入本地css文件的话好像没有效果,改了几次路径也没成,不知道哪出问题了?

所以css直接用<style>写在模板里了

 

posted @ 2018-01-15 10:50  天才老王1993  阅读(178)  评论(0编辑  收藏  举报