Simple is Happiness
Less is more
JS学习
Node.js 和 JavaScript 的最新版 npm 导致 Linux 系统崩溃,迫使用户重装系统!
by ourjs keys JS学习 Node.JS 1519440051056

npm(节点软件包管理器)是使用最广泛的JavaScript软件包管理器,npm中的一个缺陷(bug)将更改重要的Linux系统文件夹(比如/etc、/usr和/boot)的所有权。


据此前安装npm v5.7.0的用户声称,更改这些文件的所有权后,结果不是导致系统和各个本地应用程序崩溃,就是阻止系统启动。这是一款显然存在缺陷的npm更新版。

用jQuery创建一个可编辑的SELECT下拉控件(HTML/CSS)
by ourjs keys JS学习 JavaScript 1517748155552
普通的SELECT控件只能选择,不能编辑,这里可以用JS代码来实现这个功能。基本原理是在select控件上面添加一个input盖住,当select改变时自动更新input的值。

<div class="select-editor">
  <select>
    <option value="OPTION 1">OPTION 1</option>
    <option value="OPTION 2">OPTION 2</option>
    <option value="OPTION 3">OPTION 3</option>
    <option value="OPTION 4">OPTION 4</option>
  </select>
  <input type="text" name="host" value="" />
</div>
如何用Bootstrap免费网站模板和OnceAir云盘系统搭建网站服务器
by ourjs keys JS学习 Node.JS OnceOA OnceAI旺司NAS 1517537595233
OnceAir们顽石云盘是一款集文档管理、编辑、同步、搜索、博客、权限、考勤于一体的微型服务器。功耗仅3.5瓦。因采用内存数据库和异步编程技术,在低功耗ARM平台上也能有很好的性能。

这篇文章主要介绍如何在OnceAir私有云盘上用免费模板搭建个人网站。
Node.JS高效压缩解压zip文件:将child_process执行结果输入stdout流
by ourjs keys JS学习 Node.JS 1517026678422
在 Node.js 中有很多与zip压缩解压相关的库,比如 node-unzip, adm-zip, archiver等。不过在低端ARM芯片上压缩大目录时,会非常慢。

其实 Node.JS 是不太适合计算密集型的压缩与解压指令的,在较便宜的嵌入式设备上的性能并不是很好。

并且archiver/node-unzip 这些包也非常大,要占用几M的空。其实使用 7zip(windows)/ zip(linux) 等这些用C/C++写的软件,简单封装一下,性能就能很好地提升。
Node.JS段点续传:Nginx配置文件分段下载功能实现
by ourjs keys JS学习 Node.JS 1516698299844
Html 提供了一个新的 Range 标签来实现文件的分段下载。在Node.JS中可以配置这个标签来实现文件的分段下载:

请求 Request Header: 下载 3744 以后的文件内容
range: bytes=3744-

返回 Response Header: 文件总长 15522643 个字节
accept-ranges': 'bytes'
content-range': 'bytes */15522643'
Node.JS如何查看本地MAC/IP地址、计算cpu使用率和内存容量
by ourjs keys JS学习 Node.JS 1516256822967
Node.JS的OS提供了一系统CPU/内存/网络相关的接口,通过它我们可以查看本地的网络配置。使用起来非常简单
cpus返回CPU情况,返回的是一个数组,有多少个核心就有多少个元素:

var cpus = os.cpus()
console.log(cpus)
JavaScript数组从头开始的位置插入新元素或删除第一个元素
by ourjs keys JS学习 JavaScript 1515826467190
很多与数组有关的任务听起来很简单,但实际情况并不总是如此,而开发人员在很多时候也用不到他。最近我碰到了这样一个需求: 
关于数的操作用得最多还是push/pop等。但有时我们也需要将一个元素插入到现有数组的特定索引处。使用 splice 即可

var arr = [1,2,3]
arr.splice(0,0,'number')
console.log(arr)
Node.JS中UDP打洞穿透内网路由,架设内网服务器技术详解及源码
by ourjs keys JS学习 JavaScript 1514948350188
实现基于TCP协议的p2p“打洞”过程中,最主要的问题不是来自于TCP协议,而是来自于来自于应用 程序的API接口。这是由于标准的伯克利(Berkeley)套接字的API是围绕着构建客户端/服务器程序 而设计的,API允许TCP流套接字通过调用connect()函数来建立向外的连接,或者通过listen()和 accept函数接受来自外部的连接,但是,API不提供类似UDP那样的,同一个端口既可以向外连接, 又能够接受来自外部的连接。而且更糟的是,TCP的套接字通常仅允许建立1对1的响应,即应用程 序在将一个套接字绑定到本地的一个端口以后,任何试图将第二个套接字绑定到该端口的操作都会 失败。
移动端开发框架哪个好?jQuery/Vue/AngularJS有哪些区别和优缺点?
by ourjs keys JS学习 分享 1513344701701

JS框架,我认为大体上可以分为两种。一种是类似jQuery/ d3那样的,通过修改html的DOM结构来渲染UI的库。

还有一种则是类似于AngularJS/ReactJS 那样的,采用MVC分层的,通过Model来渲染View UI框架。

注意这里的区别,jQuery类似于库,而Angular类似于框架,这也意味着使用Angular要严格按照框架规定来写。但Vue虽然也是MVC渲染,但更像一个库,所以明显要比Angular上手要容易。

Node.JS 8.x和9.x新特性:N-API,NPM5,ERROR CODE
by ourjs keys JS学习 Node.JS 1511660254656
Node.JS 8主要升级了安全性和稳定性,并将维护1年半的时间。

采用 Google v8 6.1 JavaScript 引擎
The NPM 5.0.0
在典型Web应用中,性能比6.x提升20%的性能
Performance Timing API:检测应用性能

 近期热门 - 点击最多
  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. 我的js
  2. 微盟游凤椿:私域实现企业与客户情感上的连接
  3. 小程序制作流程
  4. 与游凤椿共同探索效果营销领域的时效性
  5. 立邦:以微信小程序商城为核心的私域经营,全年突破2万单
  6. 酒店自媒体引流+获客玩法
  7. 销氪助力支付宝广告代理商品动传媒实现智能销售
  8. 微盟:不同阶段的社群运营策略
  9. 微盟直播教你新人主播怎么才能做起来
  10. 传统商超如何转型新零售?联家超柿用这5个方法达成百万级业绩!

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

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

OnceOA