Node.JS如何按顺序调用async函数,如何判断是否为async函数,在mocha中自动化测试async/await代码
by ourjs keys Node.JS JavaScript 1582084017734

在Node.JS中,如果你即不喜欢回调代码嵌套,也不喜欢promise的链式写法,可以使用async/await将程序改造成顺序执行的。那么调用时和普通函数调用有何不同? 因为 await 只能在async中调用,因此可以:

(async () => {
await asyncCall()
console.log(2)
})();
node.js将回调函数嵌套,用promise改造成async/await顺序执行:异常处理和返回多个参数
by ourjs keys Node.JS JavaScript 1582014789067

在ES6语法中,可以通过async/await将上面的回调函数按顺序执行。

首先将原来的方法 promisify 化,引用 util 库将 step 函数即可:

const util = require('util')

var stepAsync = util.promisify(step)

然后用 async/await 顺序执行,注意 await 只能在 async 函数中使用

var test = async function() {
let result1 = await stepAsync(0)
let result2 = await stepAsync(0)
console.log(result1, result2)
}

test()
用旺司OnceOA免费搭建企业多人知识文档管理协作办公软件
by ourjs keys OnceOA 行业动态 1580799700093

旺司OnceOA是一款个人可以免费使用的多人知识文档管理协作软件。OnceOA基于自主研发的内存数据库和Web应用框架, 纯绿色软件,解压即用。无需配置复杂的数据库和网页服务器就可搭建知识文档管理服务器。 下载地址: http://onceoa.com

OnceOA基于自研的底层软件,在低价ARM设备上也能流畅运行,几十元就可搭建个人24小时在线的下载设备,云笔记和照片备份系统,数据共享中心。

基于Node.JS和Electron编写的集成开发环境 VS Code,成为最受欢迎的IDE
by ourjs keys Node.JS 技术前沿 1579219932808

在 Stack Overflow 的 2019 年开发者调查中,VS Code 成为了最受欢迎的开发工具,遥遥领先其他的开发工具。

使用node.js和oAuth2协议集成Github/LinkedIn第三方登录以OnceOA模块源码为例
by wx_15922 keys JavaScript Node.JS OnceOA 1579175459634

OAuth 2.0 是一个行业的标准授权协议。它的最终目的是为第三方应用颁发一个有时效性的令牌 token。使得第三方应用能够通过该令牌获取相关的资源。常见的场景就是:第三方登录。登录流程大致如下:

image

Redis源码分析,在C语言中将当前时间转化成毫秒微秒整数值
by ourjs keys Redis C 1575452725580

Redis中有两个内置的函数mstime/ustime,能直接获取当前时间的整数值。

调用:

 serverLog(LL_NOTICE, "Redis mstime %lld", mstime());
serverLog(LL_NOTICE, "Redis ustime %lld", ustime());
JavaScript在Array数组中按指定位置删除或添加元素对象
by ourjs keys JavaScript 1574084865071

JavaScript的数据中可通过splice/slice在指定位置添加或删除元素。另外还有slice、delete等方法实现。

splice方法向/从数组中添加/删除项目,然后返回被删除的项目。该方法会改变原始数组。

arrayObject.splice(index, howmany, item1, ..., itemX)

Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
by ourjs keys Node.JS 1574080605576

在node.js中只需要几行代码就可以发送http请求,通过检查statusCode可以判断该网址服务是否有效。

如下代码:

var http = require('http')
var checkExists = function(urlPath, cb) {
var options = { host: '192.168.2.101', port: 8064, path: encodeURI(urlPath)}
var req = http.request(options, function(r) {
cb && cb(r.statusCode == 200);
})

req.end()
}
Linux下的tar压缩解压缩命令详解,创建解压目录到.tar.gz包
by ourjs keys 编程技巧 分享 1572659840296
将当前目录下的article目录添加到tar.gz压缩文件
tar -zcvf article.tar.gz ./article
将当前目录下的article.tar.gz解压到 article2 下, -C 代表解压到指定目录
mkdir ./article2  #创建要解压到目录
tar -zxvf article.tar.gz -C ./article2
CentOS注册系统服务,添加自动启动脚本
by ourjs keys 心得体会 分享 1570711771883
CentOS7.x添加自动脚本比之前的脚本要显示。比如miner,首先以管理员用户创建一个新的服务文件
nano /usr/lib/systemd/system/miner.service
粘贴以下内容:
[Unit]
Description=miner

[Service]
ExecStart=/path/to/miner

[Install]
WantedBy=multi-user.target

 近期热门 - 点击最多
  1. node.js中async/await不用try/catch,使用error first或go语言方法处理异常
  2. 网站集成百度、Bing必应搜索引擎,在网页中实现站内全文搜索
  3. React Hooks入门教程九:在React中集成使用Vue实现数据双向绑定,手动配置Webpack和Babel
  4. node.js性能压力测试入门教程:wrk和loadtest安装使用
  5. JavaScript和node.js内存泄露的原因和避免方法及Chrome调试工具使用教程
  6. Html5网页中用JavaScript调用本地手机摄像头扫描识别微信二维码、条形码:postMessage跨域https传递扫码结果消息
  7. JavaScript设置对象属性只读不可修改、不可枚举、不可删除:Object.defineProperty
  8. CSS教程:图片使用混合模式和颜色叠加filter滤镜,改变PNG图标颜色
  9. CSS教程:如何设置自动显示隐藏scrollbar滚动条,自定义外观样式/宽度,附demo示例大全
  10. node.js通过Error.prepareStackTrace获取上层调用函数的文件名地址和行数位置

  全端社区 - 最新回复
  1. 酒店自媒体引流+获客玩法
  2. 销氪助力支付宝广告代理商品动传媒实现智能销售
  3. 微盟:不同阶段的社群运营策略
  4. 微盟直播教你新人主播怎么才能做起来
  5. 传统商超如何转型新零售?联家超柿用这5个方法达成百万级业绩!
  6. 美妆私域流量运营,学会这10招足矣
  7. 微盟智慧零售导购“内容营销”升级,助力导购引爆朋友圈
  8. 微盟微商城&智慧零售商品销售模式新增“抽签购”
  9. 微盟教你私域直播应该怎么做
  10. 「21金维他」X 轻互动朋友圈广告,传授“逆龄”营销法则

  开源的 OurJS
OurJS开源博客已经迁移到 OnceOA 平台。

  关注我们
扫一扫即可关注我们:
OnceJS

OnceOA