除了Web和Node,JavaScript还能做什么
前言
- 通过electron.js建设跨平台电脑桌面应用
- 通过树莓派和Node.js,沟通硬件
- 做电视机机顶盒应用,例如借助ntv.js
- 从Hybird到React-Native,编写跨平台的混合APP,或者原生APP
- 通过Cocos2d-x 框架或白鹭引擎,JS可以开发流行游戏
- JS进行三维处理: WebGL和three.js
- 做浏览器插件开发,例如Chrome插件
- 做IDE插件开发,例如VScode编辑器的插件
- 用JS写一个操作系统?:NodeOS
- 微软开发的Node.js 多线程库 Napa.js,让JS也能拥抱多线程
S1.通过electron.js建设跨平台电脑桌面应用

- electron的实现基于Chromium 和 Node.js,并可以调用
- 编码完毕后,可以一键生成Mac,windows,Linux三个不同平台的应用程序
- electron可以直接调用Node.js的API,以及沟通桌面应用程序的内置模块
S2.可以通过JS调用树莓派接口,控制硬件


参考资料
S3.做电视机机顶盒应用,例如借助ntv.js

- 电信下提供中间件浏览器的厂商主要是 iPanel、天柏,中间件规范为“IPTV2.0/3.0规范”
- 东方有线 下提供中间件的厂商主要是 iPanel、SHDV、联彤
S4.通过Hybird开发混合APP,到后来通过React-Native编写原生APP

“从使用感受上和用Objective-C或Java编写的应用相比几乎是无法区分的。 React Native所使用的基础UI组件和原生应用完全一致。” —— React-Native官网。
其他资料
S5.JS语通过Cocos2d-x 框架或白鹭引擎,可以开发流行游戏
- Cocos2d-x是一套开源跨平台的游戏开发框架,适配ios/android/html5/Mac/windows多端,但功能侧重于原生移动平台
- 提供了图形渲染、网络、用户、音频、GUI 等功能。
- 核心采用C++编写,支持JavaScript等语言进行开发

- 白鹭为开发者提供移动端游戏开发一站式解决方案,并建立包含核心渲染引擎2D/3D、游戏开发工具、创意动画工具、资源工具、原生打包方案等全球首个HTML5完整工作流
- Egret中包含多个工具以及项目。而Egret Engine是一个基于TypeScript语言开发的HTML5游戏引擎

S6.JS可以进行三维处理: WebGL和three.js

S7.做浏览器插件开发,例如Chrome插件

参考资料
S8.做IDE插件开发,例如VScode
参考资料
S9.NodeOS: 属于JS的操作系统
- 以Linux为内核
- 以Node作为主要的运行时环境
- 以npm作为包管理器
- 用户自主的独立文件系统
参考资料
Github地址

S10.微软开发的Node.js 多线程库 Napa.js,让JS也能拥抱多线程
- 支持多线程,拥抱计算密集型的任务
- 支持JavaScript线程上的对象传输,对象共享功能
- 提供了内存分配的API
参考资料
总结
除了Web和Node,JavaScript还能做什么的更多相关文章
- Node.js结合Selenium做Web自动化测试
发现腾讯课堂上有个node.js结合Selenium做Web自动化测试的教学视频, 听来感觉不错,一来老师讲的还不错,二来node.js这门语言会越来越热,学会总没什么坏处,三来发现CukeTest这 ...
- web前端之JavaScript
JavaScript概述 JavaScript历史 在上个世纪的1995年,当时的网景公司正凭借其Navigator浏览器成为Web时代开启时最著名的第一代互联网公司.由于网景公司希望能在静态HTML ...
- 微信开发之移动手机WEB页面(HTML5)Javascript实现一键拨号及短信发送功能
在做一个微信的微网站中的一个便民服务电话功能的应用,用到移动web页面中列出的电话号码,点击需要实现调用通讯录,网页一键拨号的拨打电话功能. 如果需要在移动浏览器中实现拨打电话,发送email,美国服 ...
- [HTML] 微信开发之移动手机WEB页面(HTML5)Javascript实现一键拨号及短信发送功能
在做一个微信的微网站中的一个便民服务电话功能的应用,用到移动web页面中列出的电话号码,点击需要实现调用通讯录,网页一键拨号的拨打电话功能. 如果需要在移动浏览器中实现拨打电话,发送email,美国服 ...
- web前端分享JavaScript到底是什么?特点有哪些?
web前端分享JavaScript到底是什么?特点有哪些?这也是成为web前端工程师必学的内容.今天为大家分享了这篇关于JavaScript的文章,我们一起来看看. 一.JavaScript是什么? ...
- web 前端3 javascript基础
JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理. 一.如何编写 1.J ...
- 1 初级.net web工程师,在工作中都做些什么
初级.Net Web工程师,在工作中都做些神马? 职责 初级.Net Web工程师的主要职责,就是按比较详细的要求去完成代码. 比较详细的要求是指:一般会把页面式样.功能的描述.数据库结构.性能要 ...
- 好程序员web前端分享javascript关联数组用法总结
好程序员web前端分享javascript关联数组用法总结,有需要的朋友可以参考下. Hash关联数组定义 代码如下 // 定义空数组 myhash = { } // 直接定义数组 myhash = ...
- Python web前端 05 JavaScript
Python web前端 05 JavaScript 一.获取元素 1.初识JavaScript /* .. */ #这是多行注释 // #这是单行注释 #JavaScript是一种脚本语言,是一种动 ...
随机推荐
- odoo 恢复数据库前端报错
Could not get content for…… jQuery is not defined 原因:数据库缓存 解决方法: select id, create_date, store_fname ...
- 洛谷 P1666 前缀单词 题解
题意:给n个单词,如果单词a为单词b的前缀则a,b不能共存,问能共存的集合数(包括空集) 一道dp题,排序后判断,f[i][j]表示i和j是否能共存,f[i][j]=1表示能共存,初始化dp[i]=1 ...
- 如何配置nginx和tomcat实现反向代理?
什么是反向代理 通常的代理服务器,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中由代理服务 ...
- centos 6.5 系统故障分析实验
系统故障分析实验 日志文件分析 日志的功能 用于记录系统.程序运行中发生的各种事件 通过阅读日志,有助于诊断和解决系统故障 日志文件的分类 内核及系统日志 由系统服务syslog统一进行管理,日志格式 ...
- ElasticSearch常见经典面试题
1.为什么要使用Elasticsearch? 因为在我们商城中的数据,将来会非常多,所以采用以往的模糊查询,模糊查询前置配置,会放弃索引,导致商品查询是全表扫面,在百万级别的数据库中,效率非常低下 ...
- 开发必配的Finder设置
1.显示标签页.显示路径栏.显示状态栏的设置位置,在访达->显示-> 显示状态栏 个人三个都设置了,但是觉得显示状态栏用的并不多,反而多一行,下面是显示状态栏的效果,主要可以一眼看出有多少 ...
- FreeSql (十三)更新数据时忽略列
var connstr = "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;" + "Initia ...
- 未能加载文件或程序集“Renci.SshNet, Version=2016.1.0.0, Culture=neutral, PublicKeyToken=……”
emmmm~ 这是一个让人烦躁有悲伤的问题~ 背景 我也不知道什么原因,用着用着,正好好的,就突然报了这种问题~ 未能加载文件或程序集“Renci.SshNet, Version=2016.1.0.0 ...
- 调整linux系统时间和硬件时间
1.yum -y install ntp 2.cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime(如果拷贝失败,可以 mv /etc/localt ...
- 树、图、堆、STL(来自菜鸡的"炒鸡"干粮)
树.图.堆.STL 图论基础 简单图: 没有自环,两个顶点之间最多只有一条边. 完全图: 一个简单图,每两个顶点之间都有一条边.一共有(n-1)*n/2条边. 二分图: 一个简单图,设G=(V,E)是 ...