每三位以逗号分隔的处理方式 正则方式: 代码如下: "15000000".split("").reverse().join("").replace(/(\d{3})/g, "$1,").split("").reverse().join(""); "115000000".split("").reverse().join("").replace(/(\d{3})(?=[^$])/g, "$1,").split("").reverse().join(""); var str = 123123211312.333123.replace(/(?=(?!^)(?:\d{3})+(?:\.|$))(\d{3}(\.\d+$)?)/g,,$1); console.log(str) 1500000000000.replace(/\B(?=(\d{3})+$)/g...
一、为在ios上面运行,编译jxcore代码如下: $ mkdir ~/jxcore $ cd ~/jxcore $ git clone https://github.com/jxcore/jxcore.git 代码如下: $ cd ~/jxcore/jxcore $ ./build_scripts/ios-compile.sh 如果出现import which的module not found问题, 那就通过下面语句安装python的which代码如下: sudo easy_install tools/which-1.1.0-py2.7.egg 如果出现别的问题,可以参看jxcore编译ios的前提条件,采取相应措施。 https:...
异步?我在很多地方都看到过异步(Asynchronous)这个词,但在我还不是很理解这个概念的时候,却发现自己常常会被当做“已经很清楚”(* ̄? ̄)。如果你也有类似的情况,没关系,搜索一下这个词,就可以得到大致的说明。在这里,我会对JavaScript的异步做一点额外解释。看一下这段代码:var start = new Date(); setTimeout(function(){var end = new Date();console.log("Time elapsed: ", end - start, "ms"); }, 500); while (new D...
Node.js 基于JavaScript编写应用,JavaScript是我的主要开发语言。CoffeeScript是编译为JavaScript的编程语言。其实CoffeeScript语言因其可以一对一的翻译为JavaScript的特性,使用起来也非常灵活。将其引入项目的方式也有很多种,在此,我将使用coffeescript编写node.js项目的方法做一个汇总。 直接使用coffee指令运行纯coffeescript项目 一般提起coffeescript,自然而然地会想到他是javascript的小弟,总脱离不了js的阴影。其实你...
简单的文件服务器有时候,我们想读取一些服务器上的文件,但是又不想写太复杂的程序,可以考虑用nodejs,可以很简单的写出一个文件服务器下面是我写的一个简单的文件服务器,附带缓存功能,这是github链接,或者直接复制下面的代码运行即可,需要安装mime的依赖const port = 3004; // 端口号 const http = require(http); const url = require(url); const fs = require(fs); const path = require(path); const mime = require(mi...
当往MongoDB中插入一条数据时,会自动生成ObjectId作为数据的主键。 那么如何通过ObjectId来做数据的唯一查询呢? 在MongoDB中插入一条数据在MongoDB中插入一条如下结构的数据: {_id: 5d6a32389c825e24106624e4,title: GitHub 上有什么好玩的项目,content: 上个月有水友私信问我,GitHub 上有没有比较好玩的项目可以推荐?我跟他说:"有,过两天我整理一下"。\n +\n +然而,一个月过去了,我把这件事情忘了精光,直至他昨天提醒我...
对于前端开发者而言,javascript正扮演着越来越重要的地位,它不仅能为浏览器端赋能,在web服务器方面也有很大的价值(我们可以用nodeJS来写服务端代码,启动web服务器),因此本文所要描述的,便是javascript在服务端的应用。我将介绍如何使用nodeJS来搭建一个mock服务器,方便前端自定义mock数据请求,提高前端开发的主观能动性和对项目健壮性的探索。 我们将学到 koa基本使用koa-router的基本用法koa-logger的使用glob支持文件遍...
fs模块.js: /* 1. fs.stat 检测是文件还是目录(目录 文件是否存在) 2. fs.mkdir 创建目录 (创建之前先判断是否存在) 3. fs.writeFile 写入文件(文件不存在就创建,但不能创建目录) 4. fs.appendFile 写入追加文件 5.fs.readFile 读取文件 6.fs.readdir 读取目录 7.fs.rename 重命名 8. fs.rmdir 删除目录 9. fs.unlink 删除文件 */ var fs=require(fs); //fs是node.js的核心模块,不用下载安装,可以直接引入 //1. fs.stat 检...
背景node.js,有人称之为运行在服务器端的JavaScript。以往我们使用JavaScript时,都是依赖后端查询数据库并返回数据,而JavaScript只需要展示即可。问题来了,就不能绕开后端直接查询数据库吗?答案是肯定的。 关系型——以mysql操作为例node.js提供了mysql操作的驱动(模块),如果还未安装,需要执行 npm install mysql 命令来安装。 //引入模块 var mysql=require(mysql);//定义连接对象connection var connection=mysql.creat...
介绍你需要将SVG文件转换为PNG、JPEG、TIFF、WEBP 和 HEIF 格式吗?本文将指导你如何转换为所有这些类型的格式。 我们将使用 Node.js 和Sharp npm 包来完成大部分繁重的工作。 目录 安装 Sharp Npm 包SVG 转 PNGSVG 转 JPEGSVG 转 TIFFSVG 转 WEBPSVG 转 HEIF安装Sharp Npm Package首先你需要安装 npm 包。你可以使用下面的 npm 或 yarn 命令安装: Npm $ npm install sharp --saveYarn $ yarn add sharp 现在我们已经准备好开始编...
## 使用nodejs中node-xlsx库进行excel的生成操作 ## 近日,应领导要求,从网上抓了一大批数据存入了数据库,可是妈妈批 ,市场妹子要的是excel表格啊,毕竟妹子的话还是要听的(关键人家语气蛮好的),就从网上查一些资料。可是查来查去发现很多都是复制粘贴,说实话真的讨厌这样行为,代码好歹你自己先跑跑,加点注释,有些人的代码你确定你自己跑过? 就发到网上坑人,各种耽误别人的时间。 nodejs中生成excel的库很多,在尝试后...
一.背景在文件相关的数据加工等场景下,经常面临生成的物理文件应该如何处理的问题,比如: 生成的文件放到哪里,路径存在不存在? 临时文件何时清理,如何解决命名冲突,防止覆盖? 并发场景下的读写顺序如何保证? …… 对于读写物理文件带来的这些问题,最好的解决办法就是 不写文件 。然而,一些场景下想要不写文件可不那么容易,比如文件上传 二.问题文件上传一般通过表单提交来实现,例如: var FormData = require(form-dat...
通过切文件名称后缀来获得图片格式的方式是不准确的,因为文件后缀是可以被强行更改的,这样一个.gif 图片也可以被保存成.jpg, 那么在 Node 上我们如何做文件类型的校验呢 通过文件头标识判断图片格式其实很简单,每个图片文件都有文件头标识,各种格式的图片的文件头标识都是不一样,所以可以通过判断文件头的标识来识别图片格式。 通过在网上找资料,汇总了如下的 图片文件头标识: 1.JPEG/JPG - 文件头标识 (2 bytes): ff, d8 文...
项目/框架初始化时可能需要保留一些空文件,这时候就需要批量新增gitkeep const fs = require(fs) const baseurl = D:/test const ignoreDir = [.git, .vscode, node_modules] addGitkeep(baseurl) function addGitkeep(url) {fs.readdir(url, {withFileTypes: true}, (err, files) => {err && console.log(err)//该目录下没有文件if (!files.length) {return fs.writeFile(url + /.gitkeep, null, err => {err && console.log(err...
依赖注入通常也是我们所说的ioc模式,今天分享的是用typescript语言实现的ioc模式,这边用到的主要组件是 reflect-metadata 这个组件可以获取或者设置元数据信息,它的作用是拿到原数据后进行对象创建类似C#中的反射,先看第一段代码: import "reflect-metadata"; /*** 对象管理器*/ const _partialContainer = new Map<string, any>(); const PARAMTYPES = "design:paramtypes";//需要反射的原数据,有很多种选择,我们这里选择的...