JavaScript中splice与slice的区别、数组的复制以及在指定位置添加删除元素
by ourjs keys JS学习 JavaScript 1494229165475
splice与slice是数组中的两个常用方法,但是很多初学者很容易将二者混淆。

slice的操作不影响原数组。会返回所选择的元素。
splice会影响原数组,而且可以使用splice往数组中指定位置添加或删除元素。返回被删除的元素。
Node.JS中如何判断递归嵌套的所有回调函数已经执行完毕,以读取目录下所有文件为例:计数比Promise方式快将近一倍
by kris keys JS学习 Node.JS 1493950875801
当一个Node.JS函数中有大量的异步操作时,如何判断所有回调均已完成就成为一个问题。以递归读取一个目录下的所有文件为例,可以有两种方法来判断异步函数是否全部结束:

Promise有一个 all 方法:

Promise.all(iterable) 方法指当所有在可迭代参数中的 promises 已完成,或者第一个传递的 promise(指 reject)失败时,返回 promise。

Node.js网页抓取:一个最简单的http请求客户端示例(request client)
by kris keys JS学习 Node.JS 1493871489348
Node.JS有一个request模块,可以很方便的抓取网页内容。最简单的一个示例:

var request = require('request');

request('http://www.google.com', function (error, response, body) {
 if (!error && response.statusCode == 200) {
   console.log(body);
 }
})

由上例可以看出用request发起一个http请求确实非常简单,不过唯一的问题就是,request模块的第三方依赖比较多,导致这个模块非常地大,要占用好几M的空间。
JavaScrip字符串模板表达式中的反引号怎么打?
by ourjs keys JS学习 JavaScript 1493689791273

模板字符串是ES6引入的可以在字符串中嵌入变量的表达式。与常用的单引号、双引导不同,字符串模板使用反引号表达式。

反引号一般在键盘的左上方,数据健前的第一个键,即按下Shift会显示 "~" 的那个鍵,不按Shift即为反引号。

Phantom.js维护者Slobodin退出,著名自动化测试与智能爬虫框架前景不明
by kris keys 技术前沿 分享 1493528312041
PhantomJS是一个基于WebKit的服务器端JavaScript API,它无需浏览器的支持即可实现对Web的支持,是最早的服务器端Web框架之一。系统占用极小,多用于自动化测试、智能爬虫、网络监控、网站自动截图等。PhantomJS的启动非常简单:

var page = require('webpage').create();
var url = 'http://phantomjs.org/';
page.open(url, function (status) {
  //Page is loaded!
  phantom.exit();
});

不过随着其他基于Node.JS的Web桌面程序框架 electronnode-webkit(nw) 的出现,PhantomJS的热度出现下降。最近Phantom.js的主要维护者宣布退出。项目前景不明。
Node.JS用Socket实现FTP Server服务器和Client客户端
by kris keys JS学习 Node.JS 1493294498882

FTP协议其实就是主机和服务通过Socket进行固定格式的通信过程,当某客户端连接到FTP 服务器后,客户端发送指令:

<指令> [参数] <命令结束符:"\r\n"> 

服务会按以下格式返回:

<状态码> [参数或说明] <命令结束符:"\r\n"> 

例如以下是FileZilla FTP客户端与服务器通信的过程:

响应: 220-FileZilla Server version 0.9.43 beta
响应: 220-written by Tim Kosse (tim.kosse@filezilla-project.org)
响应: 220 Please visit http://sourceforge.net/projects/filezilla/
命令: AUTH TLS
响应: 502 SSL/TLS authentication not allowed
命令: AUTH SSL
响应: 502 SSL/TLS authentication not allowed
命令: USER newghost
响应: 331 Password required for newghost
命令: PASS **************
响应: 230 Logged on
Java已快过时?斯坦福大学将JavaScript作为计算机科学入门课
by ourjs keys 技术前沿 分享 1493122815885

今年4月初,斯坦福大学开始试推行计算机科学入门课CS 106A的新版本。这个名为CS 106J的新版本用JavaScript来教,而不是用Java来教。

斯坦福大学的官方网站解释:“[CS 106J]采用的教学材料与CS 106A相同,但是使用的教学语言是JavaScript,而不是Java,JavaScript是实现交互式网页的最常见的语言。根本不需要学生之前具有编程经验。”

Docker改名Moby:急于商业化陷入品牌更名乱象
by ourjs keys 行业动态 分享 1493014246695

Docker目前是容器级别虚拟化技术的领导者,但一直面临着商业化的难题。从一个普通客户的视角来看,Docker还有一些根本问题没有解决:

1) 客户更希望购买一个完事的操作系统,而不仅仅是一个容器,即使他再便宜。

2) 并且从技术上来讲,Docker进程目前还无法做到与操作系统完全隔离。root管理员可以像上帝一样翻看你的数据,基于容器技术的云服务,无法保障企业的数据隐私。


因此基于Docker的云计算更多的是作为一种DevOps工具来使用。Docker目前一直在探索商业化的途径。此次更名可以看作Docker商业化的一次尝试。

Node.JS更改Windows注册表regedit的几种方法
by ourjs keys JS学习 JavaScript 1492827196423
注册表是windows操作系统中的一个核心数据库,其中存放着各种参数,直接控制着windows的启动、硬件驱动程序的装载以及一些windows应用程序的运行,从而在整个系统中起着核心作用。这些作用包括了软、硬件的相关配置和状态信息,比如注册表中保存有应用程序和资源管理器外壳的初始条件、首选项和卸载数据等,联网计算机的整个系统的设置和各种许可,文件扩展名与应用程序的关联,硬件部件的描述、状态和属性,性能记录和其他底层的系统状态信息,以及其他数据等。
这里介绍一些通过node.js操作注册表的几种方法。
Debian下设置Linux Shell脚本开机自动启动Node.JS进程
by ourjs keys JS学习 JavaScript 1492478150457
1) 进入init.d初始化脚本目录

cd /etc/init.d
2) 创建启动Shell脚本,安装nano: apt-get install nano

nano /etc/init.d/footbar

 近期热门 - 点击最多
  1. SpringBoot+Spring6入门指南: 使用命令行快速搭建restful web api模板
  2. 如何通过 winax 的 ActiveXObject 或 Excel.Application 往 excel 中插入一张图片
  3. node.js用activex/com+自动化读写excel时查询接口、参数的调试方法
  4. TypeScript定义数字范围类型即仅包含【小时:分钟】的时间类型,每天指定时间点执行任务
  5. 比较测试:用百度文心一言和阿里通义千问写删除文件目录并且是async/await代码
  6. node.js使用TensorFlow入门教程二:什么是张量神经网络运算与矩阵的关系及基本入门代码
  7. node.js使用TensorFlow入门教程一:简介及工作原理环境安装及初始化
  8. node.js用saml2连接Identity Provider服务器完成Azure AD/Active Directory域帐号身份认证
  9. node.js中用typescript连接mongodb数据并设置断开后自动重启连接
  10. git 将本地仓库关连并push远程

  全端社区 - 最新回复
  1. Springboot+Gradle+Mysql+Jpa最简单实例教程
  2. SpringBoot+Spring6入门指南: 使用命令行快速搭建restful web api模板
  3. Paddle/abbyy等ocr比较:如何将图片生成可选择文字版PDF
  4. 如何通过 winax 的 ActiveXObject 或 Excel.Application 往 excel 中插入一张图片
  5. 如何用JavaScript获取某个元素copy selector的CSS选择器
  6. 青否数字人5.0上线,支持真人接管实时驱动!
  7. 遥遥领先!青否数字人直播系统5.0发布,支持真人接管实时驱动!
  8. 比fs.watch更加优秀的Chokidar文件变化检测库
  9. HTML页面嵌入部分使用Vue3,在jQuery应用中用类似Vue2使用Vue3
  10. 克隆自己的数字人形象需要几步?

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

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

OnceOA