最近看了点typescript的东西,加上以前看过的一点点Node.js,所以就想把他们系统地整理一下。
本文作者:ivweb 程柳锋 当Javascript的性能遇到瓶颈,或者需要增强Javascript能力的时候,就需要依赖native模块来实现了。 应用场景 日常工作中,我们经常需要将原生的N
上一篇回顾 零基础开发 Node.js Addons 插件:Hello Node-API。本篇介绍使用 Node-API 为 Node.js 开发基于 C 的 Addons 时,如何接收与处理 Node.js 层传递的参数、Node-API 参数类型如何与 C 的类型互转、使用 CMake.js 构建源码。
Go 是一个具有高性能、高并发、跨平台的语言,正在得到越来越来广泛的关注与应用。俗话说,技多不压身,多掌握一门语言也就意味着在应用开发的时候拥有了更丰富的选择余地。本文将会站在 node.js 开发者的立场上对比介绍一些 Go 的特性,从而帮助大家快速了解 Go 语言。
node.js是一个划时代的技术,它在原有的Web前端和后端技术的基础上总结并提炼出了许多新的概念和方法,堪称是十多年来Web开发经验的集大成者。转转公司在使用node.js方面,一起走在前沿。8月16日,转转公司的FE王澍老师,在镜泊湖会议室进行了一场主题为《nodejs全栈之路》的讲座。优秀的语言、平台、工具只有在优秀的程序员的手中才能显现出它的威力。一直听说转转公司在走精英化发展战略,所以学习下转转对node.js的使用方式,就显得很有必要。 对于大多数人使用node.js上的直观感受,就是模块、工具很齐全,要什么有什么。简单request一下模块,就可以开始写javasript代码了。然而出自58同城的转转,同样存在大量服务,使用着58自有的rpc框架scf。scf无论从设计还是实际效果,都算得上业内领先。只不过在跨平台的基础建设上,略显不足。从反编译的源码中,可以找到支持的平台有.net、java、c、php。非java平台的scf版本更新,也有些滞后。之前还听说肖指导管理的应用服务部,以“兼职”的方式开发过c++版客户端。而且也得到umcwrite等服务的实际运用。所以node.js解决好调用scf服务,是真正广泛应用的前提。这也正是我最关心的问题。 王澍老自己的演讲过程并没有介绍scf调用的解决方案,但在提问环节中,进行了解答。我能记住的内容是,目前的采用的方案是使用node-java模块,启动一个jvm进程,最终还是在node.js的项目中编写的java代码,性能尚可接受,但使用中内存占用很大;王澍老师也在尝试自己使用c++开发模块来弃用node-java。 这确实很让我很失望,我所理解的node.js应该是与性能有关的部分,几乎全部是c++编写的。之前肖指导要求发布公共服务,改写成使用scf提供的异步方式执行,借那次机会,我也阅读了一部分反编译的scf源码。感觉如果只是解决node.js调用scf的问题,不应该是个很难的事情。像管理平台、先知等外围功能,可以后期一点点加入。正巧我一直在质疑自己是不是基础差的问题,干脆写一个node.js版的scf客户端,来试试自己的水准。 结合自己之前对node.js的零散知识(其实现在也很零散)。对这次实践提出如下的一些设计要点: 1、序列化版本使用scfv3,虽然难度应该是最大的,但应该能在较长的时间内避免升级序列化版本的琐事。 2、使用管理平台读取配置,禁用scf.config类似的本地配置。想想之前许多部门,推进禁用线上服务直连的过程,就觉得很有必要(管理平台也用线下环境,线下调试根本不是阻碍)。 3、客户端支持全类型,之前偶尔听说了c++版客户端不支持枚举类型,使得有些服务只能调整接口。 4、c++使用libuv库,具备跨平台开发、调试能力。c++版客户端听说只支持linux平台。 5、只提供异步接口,这是当然的,不然node.js就别想用了。
通过Edge.js项目,你可以在一个进程中同时运行Node.js和.NET代码。在本文中,我将会论述这个项目背后的动机,并描述Edge.js提供的基本机制。随后将探讨一些Edge.js应用场景,它在这
于是我将近段时间的、关于TS的学习笔记梳理成30张脑图做了这次分享,也方便以后查阅
蚂蚁区块链合约平台支持 Solidity 智能合约,针对合约源代码的编译,可以直接通过蚂蚁区块链 Cloud IDE 合约开发环境进行合约编译、部署、测试和调试。 本文介绍由蚂蚁区块链平台提供的 Solidity 编译工具 solc-js 的 下载、安装 和 使用方式 。
Node.js是一个服务器端JavaScript解释器,底层采用的还是libevent;它的目标是帮助程序员构建高度可伸缩的应用程序,目前对Node.js 的采用状况,Node.js 官方站点有一些罗列,但是相当不完整。如果你自己公司用到,也可以在 github 上提交自己的 pull-request 来更新这个文档。 http://nodejs.org/industry/ https://github.com/joyent/node/wiki/Projects,-Applications,-and-Com
Test<T> 这个高级类型,有一个泛型参数 T,当 T 传入的类型为联合类型的时候,有两种情况:
该篇文章主要介绍frida脚本hook android app的对象方法以及当方法重载时如何使用。
模块是Node.js里面一个很基本也很重要的概念,各种原生类库是通过模块提供的,第三方库也是通过模块进行管理和引用的。本文会从基本的模块原理出发,到最后我们会利用这个原理,自己实现一个简单的模块加载机制,即自己实现一个require。
前些时在学习操作postman接口时。了解到基于postman的接口自动化框架是postman+newman+jenkins; 这个其实在上家公司就实现过,许久没玩,今天下下来试试,前段时间写了俩篇关于postman的相关使用,其三篇简单可参考学习一下
Node.js 的出现,让 JavaScript 脱离了浏览器的束缚,进入了广阔的服务端开发领域。而 Node.js 对 CommonJS 模块化规范的引入,则更是让 JavaScript成为了一门真正能够适应大型工程的语言。
当想到项目创意时,很多人都在挣扎。这里列出了50个您可以在2021年完成的很棒的项目构想。我将以下列的技术栈为例,以便您弄清楚自己也可以做到这一点。这些应用程序可以在Web,移动和桌面上。您可以使用无数种工具,技术和编程语言来构建它们,我仅在此处显示一些用例。每个项目的编程级别均为初学者,中级或高级。这些应用程序可以创建为前端,后端或全栈。
这是一篇为初学者详细介绍如何在 Node.js 中使用 TypeScript的指南。本指南将涵盖基础知识、开发环境的设置以及一些实用的代码示例。希望这篇文章能够帮助你顺利入门并在未来的项目中应用这些技术。
Node.js v17 版本已发布,取代了 v16 做为当前版本,新的 v17 版本提供了一些新功能:基于 Promise 的其它核心模块 API、错误堆栈尾部增加 Node.js 版本信息、OpenSSL 3.0 支持、v8 JavaScript 引擎更新至 9.5。
原文:Announcing a new --experimental-modules
前言:perf_hooks 是 Node.js 中用于收集性能数据的模块,Node.js 本身基于 perf_hooks 提供了性能数据,同时也提供了机制给用户上报性能数据。文本介绍一下 perk_hooks。
作者:sagittarius-rev 链接:https://www.zhihu.com/question/31305968/answer/116439739 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
node类型是DOMLevel 1中定义的,除了ie浏览器所有的浏览器都可以访问这个类型,在js中,所有的节点类型都继承node类型。
Node.js 是什么? Node.js采用C++语言编写而成,浏览器内核V8做为执行引擎;Node不是JS应用、而是一个Javascript的运行环境。Node保留了前端浏览器js的接口,没有改写语言本身的任何特性,依旧基于作用域和原型链。 Node.js 是一个为实时Web(Real-time Web)应用开发而诞生的平台,它从诞生之初就充分考虑了在实时响应、超大规模数据要求下架构的可扩展性。这使得它摒弃了传统平台依靠多线程来实现高并发的设计思路,而采用了单线程、异步式I/O、事件驱动式的程序设计模型。
随着前端技术的不断发展,TypeScript(简称TS)已经在逐步取代JavaScript(简称JS),尤其在以 Vue3 使用 TS 重构后, TS 更是成为前端框架编写的主力语言。
在计算机历史上,1995 年是一段疯狂的岁月。首先 Java 出现了,随后 JavaScript 也出现了。Java 和 JavaScript 的名字看起来像是一对双胞胎,但实际上它们差别巨大,Java 是被编写和静态定型的,而 JavaScript 则是被解释和动态定型的。但这仅仅是这两个完全不同的语言的技术差别的一个开始,Node.js 的出现使得两种语言经历了两条完全不同的发展轨迹。
《深入浅出Node.js》:Node异步编程解决方案 之 生成器(Generator)函数
在前端面试的过程中,前端工程化一直是考察面试者能力的一个重点,而在我们常用的项目打包工具中,无论是webpack还是rollup,都具备一项很强大的能力——tree-shaking,所以面试官也常常会问到tree-shaking的原理是什么,这时我们该如何回答呢?其实核心原理就是AST。
不知道各位 noder 们有没有碰到过这样一个疑问,当你写的 Node.js 代码是异步逻辑的时候,我们要怎么才能知道 Node.js 进程是什么,什么时候才会退出呢?Node.js 又是怎么知道异步执行结束了?或者当你执行一段 Node.js 代码之后,进程去一直等在这里没有退出又是怎么回事呢?
本文主要介绍在 Electron9.x 中,使用ffi-napi,ref-array-napi,ref-napi 加载 Windows 动态链接库,并在Vue 渲染进程中使用。使用过程中会遇到一系列的坑,本文将会一一解决,并解释原因。如有同行兄弟遇到此问题可以借鉴。
每个项目都有其规范和需求,在构建应用程序时,最重要的是选择正确的技术对其进行编码。 在本文中,我们将研究Python和Node.js,以了解它们的优点、缺点和用例,以便你能确定哪一个最适合你的项目。
首先在需要在文件行数右侧点击打上断点(红色圆),然后点击下图绿色启动按钮即可开始调试,代码自动运行到断点所在行,此时鼠标移入变量可以看到每个变量的当前状态
WebGL 和 Node.js 中都有 Buffer 的使用,简单对比记录一下两个完全不相干的领域中 Buffer 异同,加强记忆。
Element.replaceWith()的签名接受数量可变的Node或DOMString参数。。。
通过 node -v 命令查看本机是否安装,如果没有安装,参考node.js安装指南 根据电脑系统环境进行安装
Node.js 是基于 “ Chrome V8 引擎 ” 的 JavaScript 运行环境
用 Node 写服务端的时候,比较头疼的是排查定位问题,因为不像 Chrome 浏览器中,我们有直接的报错提示在 dev tool 中,或者我们可以直接打断点调试。
对于开发一个 JavaScript 三方库供外部使用而言,package.json是其中不可缺少的一部分
2019 年的 4 月份,Node.js 官方团队在发布 Node.js 12 时,也给我们带来了最新的 ECMAScript Modules 支持。
在数字时代,第三方库是开发者的杠杆,而Node.js则是理想的支点。它们将我们从编写枯燥的代码中解放出来,让我们能够专注于创造独特的功能。
仅仅是简单的升级 Node.js 版本就可以轻松地获得性能提升,因为几乎任何新版本的 Node.js 都会比老版本性能更好,为什么?
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。
队列是 Node.js 中用于有效处理异步操作的一项重要技术。在本文中,我们将深入研究 Node.js 中的队列:它们是什么,它们如何工作(通过事件循环)以及它们的类型。
在网页开发领域,Node.js 被视为理想的运行环境。Node.js 是专为运行 JavaScript 编写的代码而设计的,而 JavaScript 是世界上最流行的编程语言之一。Node.js 使广大开发者社区能够构建服务器端应用程序。
前言 之前编写了一个vscode插件用vscode写博客和发布,然后有园友要求写一篇来介绍如何开发一个vscode扩展插件,或者说介绍开发这个插件的过程。然而文章还没有写,园子里面已经有人发布一个文章,是园友上位者的怜悯的VSCODE 插件初探介绍了自己开发的一个插件与如何简单的开发一个插件。虽然已经有这么一个文章,但是我觉得还是可以更仔细的来介绍如何来开发一个vscode插件,也算之前说好要写这么一个文章的一个承诺吧,于是就有了还这么篇文章。 一、开发环境介绍与安装 为了演示一个安装环境,我安装了一个干净
node不能直接运行ts文件,需要把ts转为js才能运行 如果我们要想像js一样直接用node运行,需要安装如下安装包
AST 是一个非常基础但是同时非常重要的知识点,我们熟知的 TypeScript、babel、webpack、vue-cli 都是依赖 AST 进行开发的。本文将通过 AST 与前端工程化的实战向大家展示 AST 的强大以及重要性。
领取专属 10元无门槛券
手把手带您无忧上云