标签javascript下的文章

呛水滴鱼 发布于 05月29, 2018
阅读(203) 评论(0)

WebSocket 简介

WebSocket 简介websocket的产生我们都知道HTTP协议是一种请求-响应模型,表现在Request和Response两个对象上,并且只能由客服端产生Request服务器被动的回复Response。但是在及时通讯的业务场景,这种通讯模型并不适用,因为服务端不能直接给客服端推送消息,所有只能由客服端不断的循环发送请求询问服务器数据是否有需要推送的消息,这种机制称为轮询。轮询机制因为要不断...

阅读全文 »

呛水滴鱼 发布于 05月23, 2018
阅读(265) 评论(0)

自定义模版字符串解析

自定义模版字符串解析有时候需要拼接一些字符串,在Java有字符串模版,但是这个模版的可读性很差,js在ES6中新增了字符模版,但是在面对模版字符串的时候依旧无法处理。所以写了个工具在两端可以解析同一套模版。String name = "张三";int age = 18;String temp = "%s您好!你的年龄%s"//Java字符串模版// 改成模版字符串时可读性比较好var temp =...

阅读全文 »

呛水滴鱼 发布于 05月05, 2018
阅读(280) 评论(0)

koa源码简析

koa源码简析Koa代码量非常少,大致分为5个部分,application.js (koa对象)context.js (koa上下文对象) request.js (request对象)response.js (response对象)koa-compose/index.js (合并中间件)与原生node模块写法的对比首相我们对比一下使用node原生的http模块和koa构建服务的异同//原生...

阅读全文 »

呛水滴鱼 发布于 03月14, 2018
阅读(233) 评论(0)

JavaScript 异步编程

JavaScript 异步编程异步的概念  作为一个java程序猿,此处需要明确的是:异步与多线程与并行不是同一个概念,所谓"异步",简单说就是一个任务不是连续完成的,可以理解成该任务分成两段,先执行第一段,然后转而执行其他任务,等做好了准备,再回过头执行第二段。 比如,有一个任务是读取文件进行处理,任务的第一段是向操作系统发出请求,要求读取文件。然后,程序执行其他任务,...

阅读全文 »

呛水滴鱼 发布于 03月12, 2018
阅读(214) 评论(0)

JavaScript中常用的工具

JSON 工具类JSON.parse()解析JSON字符串并返回对应的值,可以额外传入一个转换函数,用来将生成的值和其属性, 在返回之前进行某些修改。JSON.stringify()返回与指定值对应的JSON字符串,可以通过额外的参数, 控制仅包含某些属性, 或者以自定义方法来替换某些key对应的属性值。let obj = { name: "张三", age: 18, toStr...

阅读全文 »

呛水滴鱼 发布于 03月12, 2018
阅读(214) 评论(0)

JavaScript 中的反射 Reflect

与大多数全局对象不同,Reflect没有构造函数。你不能将其与一个new运算符一起使用,或者将Reflect对象作为一个函数来调用。Reflect的所有属性和方法都是静态的(就像Math对象)Reflect.apply()对一个函数进行调用操作,同时可以传入一个数组作为调用参数。和 Function.prototype.apply() 功能类似。let obj = { name: "张三",...

阅读全文 »

呛水滴鱼 发布于 03月12, 2018
阅读(102) 评论(0)

JavaScript 中的代理 Proxy

Proxy的构造方法target参数被代理的对象handler参数代理的操作的定义对象let handler = { get: function(target, name){ return name in target ? target[name] : "no"; }};let p = new Proxy({}, handler);p.a = 1;p.b = undefi...

阅读全文 »

呛水滴鱼 发布于 03月06, 2018
阅读(116) 评论(0)

JavaScript 的 Function

使用Function构造器生成的Function对象是在函数创建时解析的。这比你使用函数声明或者函数表达式(function)并在你的代码中调用更为低效,因为使用后者创建的函数是跟其他代码一起解析的。所有被传递到构造函数中的参数,都将被视为将被创建的函数的参数,并且是相同的标示符名称和传递顺序属性function.arguments以数组形式获取传入函数的所有参数。arguments对象是所有(非...

阅读全文 »

呛水滴鱼 发布于 03月06, 2018
阅读(78) 评论(0)

认识 JavaScript 的 prototype

认识 JavaScript 的 prototypeprototype在Java里获取对象的实例一般是通过Class来获取,在ES6以前js中是没有class的概念,获取实例是通过构造方法来获取。function ClassMate(name,age) { this.name = name; this.age = age; this.say = function (){ ...

阅读全文 »

呛水滴鱼 发布于 03月06, 2018
阅读(108) 评论(0)

Javascript 的 Object

Object 的属性Object.prototype可以为所有 Object 类型的对象添加属性。Object.prototype Object的原型Object.prototype.constructor特定的函数,用于创建一个对象的原型。Function.prototype.constructor等于本身。Object.prototype.hasOwnProperty()返回一个布尔值 ,表示...

阅读全文 »

呛水滴鱼 发布于 03月05, 2018
阅读(273) 评论(0)

JavaScript 学习计划

ES6 学习计划Javascript 的 Object JavaScript 的 FunctionJavaScript 中的代理 ProxyJavaScript 中的反射 ReflectPromise 对象使用Generator 函数JavaScript 的 Class认识 JavaScript 的 prototypeJavaScript 异步编程node 学习计划nodejs 多线程编程基于事件...

阅读全文 »

呛水滴鱼 发布于 03月01, 2018
阅读(69) 评论(0)

JavaScript 的 Class

简介  class声明创建一个基于原型继承的具有给定名称的新类。class是ES6中新出现的一个关键字,但是它大部分功能在ES5中都可以做到。//es5写法function Point(x, y) { this.x = x; this.y = y;}Point.prototype.toString = function () { return '(' + this.x + ', ' + th...

阅读全文 »

呛水滴鱼 发布于 02月27, 2018
阅读(105) 评论(0)

Generator 函数

Generator 简介 Generator官方的解释是生成器,但是语法上,首先可以把它理解成,Generator 函数是一个状态机,封装了多个内部状态。 Generator函数首先也是一个函数,语法上在定义时比普通函数多了一个*号,以下方式都时合法的function * foo(x, y) { ··· }function *foo(x, y) { ··· }function* foo(x, y)...

阅读全文 »

呛水滴鱼 发布于 02月27, 2018
阅读(95) 评论(0)

Promise 对象使用

Promise 介绍  Promise是异步编程的一种解决方案,比传统的解决方案—回调函数和事件—更合理和更强大。它由社区最早提出和实现,ES6将其写进了语言标准,统一了用法,原生提供了Promise对象。const executor = function(resolve, reject) { /* code */ } new Promise(executor)  executor是带有re...

阅读全文 »