Node操作MySQL
数据库的增删改查增1insert into 表名(字段名1,字段名2,......) values(值1,值2,......) 删1delete from 表名 where 删除条件 改1update 表名 set 字段1=值1, 字段2=值2,... where 修改条件 查1SELECT 字段名1, 字段名2, ..... FROM 表名 WHERE <条件表达式> Node.js 中使用 MySQL初始化文件夹1npm init -y 安装插件1npm i mysql 创建 server.js 将代码复制进去12345678910111213141516var mysql = require("mysql");var connection = mysql.createConnection({ host: "localhost", user: "root", password: "root", database: "test"...
Xmind笔记汇总
HTML到Node.js之前笔记汇总
24道JavaScript算法题
标准排序第一种123456789101112var arr = [5, 8, 3, 6, 9];for (var i = 0; i < arr.length; i++) { for (var j = i + 1; j < arr.length; j++) { var temp; if (arr[i] > arr[j]) { temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } }}console.log(arr); 第二种:冒泡排序123456789101112var arr = [5, 4, 6, 1, 3, 2];for (var i = 0; i < arr.length; i++) { for (var j = 0; j < arr.length - i + 1; j++) { var temp; if (arr[j] > arr[j + 1]) ...
JavaScript常见问题
javascript 的 typeof 返回哪些数据类型 string,boolean,number,undefined,function,object 例举 3 种强制类型转换和 2 种隐式类型转换? 强制(parseInt,parseFloat,number隐式(== ===) Split 和 join 的区别 Split是将字符串切割成数组的形式join是将数组转换成字符串 数组方法 pop() push() unshift() shift() push()尾部添加pop()尾部删除unshift()头部添加shift()头部删除 IE 和标准下有哪些兼容性的写法123var ev = ev || window.eventdocument.documentElement.clientWidth || document.body.clientWidthVar target = ev.srcElement||ev.target ajax 请求的时候 get 和 post 方式的区别 get请求值在 url 后面post...
Node中的会话技术
会话技术有很多的网站都有登录的功能: 123|--login.html (登录页)|--index.html(主页)|--vip.html(设置页) 实际开发中,我们必须解决: 页面之间的状态共享问题:例如用户从 login.html 页面登陆之后,再去访问 index.html 或者 setting.html 页面时,应该还是能够获取用户的登陆信息。 权限控制。必须先 login 成功,之后才访问 vip.html。 由于 http 是无状态的,就是无记忆的,对于 HTTP 协议而言,无状态同样指每次 request 请求之间是相互独立的,当前请求并不会记录上一次请求信息。每次请求都是独立的,没有关联的,所以服务器和客户端都不知道是否是登录过的。 什么是会话控制会话控制就是用来弥补 http 无记忆的缺陷的一种技术。它能够将数据持久化(保存数据)的保存在客户端(浏览器)或者服务器端,从而让浏览器和服务器进行多次数据交换时,产生连续性。 让每一次的请求和响应都知道对方是谁。 会话控制的分类Cookie–将数据保存到客户端(浏览器)(饼干,甜点)Cookie 原理 从服务器...
Node中的跨域
什么是跨域不同源的AJAX就是跨域 协议,域名 ,端口相同就是同源 问题演示 浏览器向 web 服务器发起 http 请求时 ,如果同时满足以下三个条件时,就会出现跨域问题,从而导致 ajax 请求失败: 你的浏览器多管闲事了。跨域问题出现的基本原因是浏览器出于安全性的考虑——同源策略:ajax 请求必须是同源,封杀了你跨域请求。可以安装一个浏览器插件allow-control-allow-origin来测试一下。 如果使用 postman 软件(它不是浏览器)来发请求,就不会有这个问题了。 你的请求是 xhr 请求。就是常说的 ajax 请求。浏览器请求图片资源,js 文件,css 文件是可以跨域的(不是 ajax 请求) 发出请求不符合同源策略要求。 同源是指:协议相同,域名相同,端口相同。即发 ajax 请求的所在的页面 与 所请求的接口的 url 必须是同源的。 以下就是不同源的: 从http://127.0.0.1:5500/message_front/index.html 请求http://localhost:8080/msg 在前后端分离开发的场景下,前端...
ArrayBuffer
ArrayBufferArrayBuffer对象、TypedArray视图和DataView`视图是 JavaScript 操作二进制数据的一个接口。这些对象早就存在,属于独立的规格(2011 年 2 月发布),ES6 将它们纳入了 ECMAScript 规格,并且增加了新的方法。它们都是以数组的语法处理二进制数据,所以统称为二进制数组。 这个接口的原始设计目的,与 WebGL 项目有关。所谓 WebGL,就是指浏览器与显卡之间的通信接口,为了满足 JavaScript 与显卡之间大量的、实时的数据交换,它们之间的数据通信必须是二进制的,而不能是传统的文本格式。文本格式传递一个 32 位整数,两端的 JavaScript 脚本与显卡都要进行格式转化,将非常耗时。这时要是存在一种机制,可以像 C 语言那样,直接操作字节,将 4 个字节的 32 位整数,以二进制形式原封不动地送入显卡,脚本的性能就会大幅提升。 二进制数组就是在这种背景下诞生的。它很像 C 语言的数组,允许开发者以数组下标的形式,直接操作内存,大大增强了 JavaScript 处理二进制数据的能力,使得开发者有...
Class 的基本语法
Class 的基本语法简介JavaScript 语言中,生成实例对象的传统方法是通过构造函数。下面是一个例子。 12345678910function Point(x, y) { this.x = x; this.y = y;}Point.prototype.toString = function () { return "(" + this.x + ", " + this.y + ")";};var p = new Point(1, 2); 上面这种写法跟传统的面向对象语言(比如 C++ 和 Java)差异很大,很容易让新学习这门语言的程序员感到困惑。 ES6 提供了更接近传统语言的写法,引入了 Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。 基本上,ES6 的class可以看作只是一个语法糖,它的绝大部分功能,ES5 都可以做到,新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。上面的代码用 ES6 的class改...
Class 的继承
Class 的继承简介Class 可以通过extends关键字实现继承,这比 ES5 的通过修改原型链实现继承,要清晰和方便很多。 123class Point {}class ColorPoint extends Point {} 上面代码定义了一个ColorPoint类,该类通过extends关键字,继承了Point类的所有属性和方法。但是由于没有部署任何代码,所以这两个类完全一样,等于复制了一个Point类。下面,我们在ColorPoint内部加上代码。 12345678910class ColorPoint extends Point { constructor(x, y, color) { super(x, y); // 调用父类的constructor(x, y) this.color = color; } toString() { return this.color + " " + super.toString(); // 调用父类的toSt...
ECMAScript 6 简介
ECMAScript 6 简介ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。 ECMAScript 和 JavaScript 的关系一个常见的问题是,ECMAScript 和 JavaScript 到底是什么关系? 要讲清楚这个问题,需要回顾历史。1996 年 11 月,JavaScript 的创造者 Netscape 公司,决定将 JavaScript 提交给标准化组织 ECMA,希望这种语言能够成为国际标准。次年,ECMA 发布 262 号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为 ECMAScript,这个版本就是 1.0 版。 该标准从一开始就是针对 JavaScript 语言制定的,但是之所以不叫 JavaScript,有两个原因。一是商标,Java 是 Sun 公司的商标,根据授权协议,只有 Netscape 公司可以合法地使用 JavaScript...