OurJS


OurJS-我们的JS, 我们的技术-IT文摘; 专注JS相关领域;
我们热爱编程, 我们热爱技术;我们是高大上, 有品味的码农;

欢迎您订阅我们的技术周刊


我们会向您分享我们精心收集整理的,最新的行业资讯,技术动态,外文翻译,热点文章;
我们使用第三方邮件列表向您推送,我们不保存您的任何个人资料,注重您的隐私,您可以随时退订,

欢迎分享您的观点,经验,技巧,心得

让我们一起找寻程序员的快乐,探索技术, 发现IT人生的乐趣;


本网站使用缓存技术每次加载仅需很小流量, 可在手机中流畅浏览;
如果您发现任何BUG,请即时告知我们: ourjs(at)ourjs.com

ourjs

CentOS注册系统服务,添加自动启动脚本

分享 by ourjs 1570719569175
CentOS7.x添加自动脚本比之前的脚本要显示。比如miner,首先以管理员用户创建一个新的服务文件
nano /usr/lib/systemd/system/miner.service
粘贴以下内容:
[Unit]
Description=miner

[Service]
ExecStart=/path/to/miner

[Install]
WantedBy=multi-user.target

用OnceOA旺司在树莓派等arm设备免费搭建私有云版有道云笔记文档管理系统,在线编辑Markdown,同步备份手机照片

分享 by ourjs 1570684131332

OnceOA旺司是一套可免费使用的私有云笔记系统,可编辑Markdown,搭建svn/git服务器,共享/备份手机文件,将树莓派改造成个人NAS网盘。OnceOA支持纯绿色软件,Windows下解压即用。

Windows 版有很多功能如 svn/git/smb 等并不支持 Windows 平台。并且 Windows 平台无法发挥 OnceDB 数据库的最优性能。正式生产环境建议采用 Linux(Debian/Ubuntu) 版本。

node.js含有%百分号时,发送get请求时浏览器地址自动编码的问题

JavaScript by ourjs 1570684128111
目前浏览器会对地址,进行编码,比如这个文件名:
sales\报表.png
在发到后台时,会自动编码成:
/file/view/sales/%E6%8A%A5%E8%A1%A8.png

Node.JS用纯JavaScript生成图片或滑块式验证码

分享 by ourjs 1568250597914
有一些Node.JS图片生成类库,比如node-captcha等的类库,需要c/c++程序生成图片。跨平台部署不是很方便。这里介绍几个用纯JS实现的图片验证码生成模块。用纯JavaScript实现的验证码生成模块。安装简单,依赖少:

npm install captchapng

树莓派ARM开发板使用TF卡启动和系统安装到EMMC启动,硬盘存储读写速度对比测试

分享 by ourjs 1567686892730
树莓派从百网卡升级到了千兆,但却爆出了一些设计缺陷,实测中TF卡的读写速度仅为10/30Mb/s,远远发挥不出CPU和千兆网卡的性能。
那么如果树莓派采用emmc存储,能否发挥出最佳性能呢?我们可以选用有EMMC存储的ARM开发板测试一下。
首先,下载Armbian操作系统,然后用Win32DiskImager写入TF卡,并通电启动。

Node.JS枚举统计当前文件夹和子目录下所有代码文件行数

分享 by ourjs 1566461572402
使用时将此脚本文件命名为lines.js,然后复制到需要统计的文件夹下,然后执行
node lines.js
然后会统计每一个代码文件的长度,和代码总行数:

$ node lines.js
lines.js 56
package.json 6
...
LINES: 40464

在Windows平台上用命令行创建tar.gz压缩包和解压

分享 by ourjs 1566385942005
如果在Windows上安装了Linux子系统,可以用Linux命令。 
创建.tar.gz
tar -czvf dwt.tar.gz dwt/
解压.tar.gz
tar -xzvf dwt.tar.gz -C tmp/

node.js函数如何获取调用者的文件目录路径: 用callsite获取错误堆栈的每一层文件名及路径

分享 by ourjs 1566375934210
在node.js中有时侯会想从被调用函数中获取调用者的文件位置和路径。可以用以下方法。使用这个模块可以获取调用堆栈的文件目录

var path = require('path'),
    callsite = require('callsite');

module.exports = {
  someFn: function () {
    var stack = callsite(),
        requester = stack[1].getFileName();

    console.log(path.dirname(requester));
  }
};

让pre和textarea等HTML元素去掉滚动条自动换行自适应文本内容高度

JavaScript by ourjs 1564566992527
pre显示文本内容时是不会自动换行的,此时可以添加一些CSS来解决:HTML中pre和textarea可以显示预格式化的文本。即保留空格和换行符。而不必添加<br>和&nbsp;等HTML元素来添加换行和打印空格。

pre {
    word-wrap: break-word;
    white-space: pre-wrap;
    padding: 9.5px;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
}

Node.JS的竞争对手?QuickJS入门教程,使用os模块读写文件,并将JavaScript编绎成可执行文件

Node.JS by ourjs 1563508084054
QuickJS 是一个完全由C语言编写的极小型JavaScript引擎,支持跨平台运行,并且有一些Java的特质,可将JS直接编绎成二进制文件。内置的系统模块还可以直接读写文件,动态加载脚本。目前还不支持net模块,不过已经有人在pull request中提交了merge请求。不久将可以直接使用系统Socket或发送http请求,构建web服务器。

由于非常精简,而且拥有JavaScript的全部功能,可以预见,QuickJS将是Node.JS在嵌入设备,尤其是低端设备上较强的竞争对手。


分享到