12 ISaiSai

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 862

并发执行多个 await,promiss.all

await 可以同步执行,但是有时候为了提升性能,反而需要并发多个await同步执行,此时需要用到promise.allDEMO如下async function doit() { var list = []; list.push(sayHello('a1')) list.push(sayHello('a2')); var result = await Promise.al...

2019-09-29 15:33:28

org.apache.commons.lang.StringUtils isBlank 与 isEmpty 的区别

System.out.println(StringUtils.isEmpty(" ")); // 返回false System.out.println(StringUtils.isBlank(" ")); // 返回true空字符串的时候 isEmpty 返回false , isBlank 返回true万事开头难...

2019-04-25 10:26:07

javascript set去重

Array.from(new Set([“1”,“2”,“3”,“5”,“1”]));

2019-03-19 10:35:08

SyntaxError: Unexpected number in JSON at position 1

SyntaxError: Unexpected number in JSON at position 1javascript JSON序列表,key 是int类型的时候,出错处理方法,使用正则表达式,将int类型的key 替换成字符串var a ="{2:\"全天\",7:\"测试\",8:\"1天\",9:12,10:14}";var x = a.replace(/(\d+):/g,"...

2019-03-12 14:35:20

Generator yield 迁移 await/async

Generator yield 迁移 await/asynces6 异步使用了await 和 async,老代码 使用了 generator 和yield ,迁移需要利用到 co.wrap 函数var co = require('co');function* oldF() { return yield new Promise(function (resolve, reject) { ...

2018-09-17 18:44:50

node -e 参数

https://nodejs.org/api/cli.html#cli_e_eval_scriptEvaluate the following argument as JavaScript. The modules which are predefined in the REPL can also be used in script.On Windows, using cmd.exe ...

2018-07-27 17:26:49

fetch 请求json 转 param

fetch post 请求的时候 header可以有两种选择: ‘Content-Type’: ‘application/json’, 和 ‘Content-Type’: ‘application/x-www-form-urlencoded’,当使用application/json 的时候,body直接是 JSON.stringify(paramObject) 比较简单 但当使用 ‘Co...

2018-07-19 11:22:16

node 使用long 类型

当有非常长的数字时候,node 会丢失精度,需要使用longnpm install long使用demovar Long = require("long");var longValueToB = Long.fromString("1152921517493863811", true);console.log(longValueToB.and(3).toString())参考...

2018-05-10 15:14:57

moment 当前时间取整

可以将当前时间的时分秒毫秒设置为0 取得当天00:00:00 的时间moment.clone().set({hour:0,minute:0,second:0,millisecond:0})

2018-05-08 16:09:55

moment getTime

// 如下返回truenew Date().getTime() == moment().valueOf();如果需要转化为Date()类型 如下结果返回truemoment().toDate().getTime()== new Date().getTime()

2018-05-04 17:23:45

node inspect=0

inspect=0 的含义是随机分配一个未使用的端口号码 用以调试 inspect 则固定使用 9229

2018-04-12 21:15:33

koa 使用 decorator

在使用koa 开发网站的过程中期望使用decorator ,进行日志记录 通过babel-register + 安装npm install --save babel-plugin-transform-decorators-legacy.babelrc{ "plugins": ["transform-decorators-legacy"]}入口文件引入babel...

2018-02-12 15:54:08

google地图API被墙问题总结

google地图分三个1.google.cn的httphttp://ditu.google.cn/maps/api/js这个不会被墙,且加载的资源都是.cn的,最好用,但是要求你的域名也是http的如携程httphttp://hotels.ctrip.com/international/bangkok359能够正常展示但是无法使用google.maps.plac...

2018-02-12 11:06:48

NODEJS 的面向方面编程 shimmer

nodejs 有时候需要打日志,做权限验证等工作,如果希望在不修改原有代码情况下,做这些工作,可以使用shimmer https://www.npmjs.com/package/shimmervar Calculator = require('./calculator');var shimmer = require('shimmer');shimmer.wrap(Calculator

2018-01-26 16:27:02

使用 NIM调试Nodejs 代码

查看了nodejs 的官方文档中,调试nodejs 推荐使用的是Chrome DevTools + NIMNIM插件地址:https://chrome.google.com/webstore/detail/nim-node-inspector-manage/gnhhdgbaldcilmgcpfddgdbkhjohddkj 插件会自动监听9225端口,当监听到有调试代码执行的时候,会自动

2018-01-23 14:54:37

使用extend 解决Object.assign 浅拷贝问题

Object.assign 是浅拷贝,如下代码,x 输出值被修改,这有时不是我们希望看到的var x = {d: {e: {g: 9}}}var a = {b: 1, c: 2, d: {e: {g: 2}}}Object.assign(a,x)a.d.e.g ="abc"console.log(x)安装npm install extend修改后代码如下,根据输出可见 x

2018-01-22 15:24:24

nodejs 下载网络文件 使用request

var request = require('request');var fs = require('fs');request.post('https://download.site.com', { form: { param:"param" }}).pipe(fs.createWriteStream('./azip'))

2017-12-13 17:12:51

nodejs 使用cron-parser 解析cron 时间

如下DEMO 每5分钟执行一次其中 "0 */5 * * * *" 第一个0 表示0秒*/5 表示分钟 "/"表示每5分钟间隔“”.“/”字符:指定一个值的增加幅度。n/m表示从n开始,每次增加m第三个* 表示小时```var parser = require('cron-parser');try { var interval = parser.parseExp

2017-11-20 10:33:11

node中的 await async 入门

await async ES7 中新增的, NODE 7.5 及以后支持,以前的需要使用babel-registerfunction myP(val) { return new Promise(function (resolve, reject) { setTimeout(function () { resolve(val) }, 5

2017-11-14 12:00:05

node Unexpected token import

node 目前默认不支持es6 的模块 import解决方法有2方法1 experimental-modules升级node 8.5 使用 experimental-modules,参数。切要求所有文件名后缀都要修改为mjs node –experimental-modules index.mjs index.mjsimport {add} from './calculator.

2017-11-13 19:07:33

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!