前端的JS 自身可能不能直接连数据库,后端的JS(如 Node.js )是可以连数据库的;
如果你想前端JS 查数据库,可以用JS 发一个ajax 请后端,后端查询完数据库后,把结果封装成JSON 返回,前端的AJAX 回调函数中取出JSON 对象,把内容更新到网页上。
示例:
$.ajax({url: "./ajaxdata/findtable.do",
method: 'POST',
dataType: 'json',
data: {
dTyppe: 'findid',
ID: '001',
},
success: function (data) {
// data 是返回的对象,可以data 中取出数据
// 输出内容
}
})
1、cypress
Cypress是新一代前端测试框架,它基于node js。解决了开发人员和QA工程师在测试现代应用程序时面临的关键难点问题。
2、rollup
rollup是一款小巧的javascript模块打包工具,更适合于库应用的构建工具可以将小块代码编译成大块复杂的代码,基于ES6 modules,它可以让你的 bundle 最小化,有效减少文件请求大小
3、day.js
2KB 不可变日期和时间库。
4、immer.js
Immer核心实现是利用 ES6 的 proxy,几乎以最小的成本实现了 js 的不可变数据结构,简单易用、体量小巧、设计巧妙,满足了我们对JS不可变数据结构的需求。
5、jsdoc
JSDoc 是一个根据 JavaScript 文件中注释信息,生成 JavaScript 应用程序或模块的API文档的工具。你可以使用 JSDoc 标记如:命名空间,类,方法,方法参数等。从而使开发者能够轻易地阅读代码,掌握代码定义的类和其属性和方法,从而降低维护成本,和提高开发效率。
6、ramda.js
一款实用的 JavaScript 函数式编程库。
7、p-limit
以有限的并发运行多个承诺返回和异步函数
可以限制Javascript中的promise或同时阻止来自服务器的所有请求调用。
8、Akta
为Javascript应用程序量身定制的状态管理库
9、js-cookie
用于处理浏览器cookie的轻量级Javascript API。
Node.JS 服务器可以在 后端 连接mysql,这时的情况和php是一样的。
我从未见过前端JS直接连接mysql的,原因是:
(1)浏览器内置的javascript 引擎一般只支持websocket,即基于http连接的套接字高层协议,而不是真正的socket,因此除非服务器端也开启websocket服务并拆开套接字转发到mysql,否则无法代理连接
(2)我见过的绝大多数mysql 服务器都工作在服务器环境下的一个虚拟子网,换句话说,直接的远程3306端口是拒绝连接的,这样可以隔绝端口直接攻击
如果前段js直接可以连接后端服务器mysql的端口,那么就不叫B/S结构了,而是C/S结构(比如传统的windows桌面程序),安全上有很多问题,所以大多数浏览器也不支持这个操作。