MySQL数据库简单的增删改查

先create一个简单的students表,包含的字段有id,name,sex,age和tel

create table students
    (
      id int unsigned not null auto_increment primary key,
      name char(8) not null,
      sex char(4) not null,
      age tinyint unsigned not null,
      tel char(13) null default "-"
    ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

记得建表的时候把字符集设置为utf8或者gbk,因为这里之前踩过坑,默认latin1,不支持中文,哈哈哈╮(╯﹏╰)╭

表建立好之后,可以通过describe students查看表结构

- 阅读剩余部分 -

css3的flex布局

最近在撸小程序,只在微信里面运行,不用考虑其他浏览器的兼容性,flex布局超级好使,在这里总结一波。

只要在支持flex布局的浏览器下声明display:flex即可,在这个容器下的子元素就会自动成为容器的成员。容器有6个属性,分别是

flex-directionflex-wrapflex-flowjustify-contentalign-itemsalign-content

flex-direction属性

flex-direction属性控制子元素的排列方向

flex-direction: row | row-reverse | column | column-reverse;

四个属性值表现如下

  • row(默认值):水平方向排列,起点在左端。
  • row-reverse:水平方向排列,起点在右端。
  • column:垂直方向排列,起点在上沿。
  • column-reverse:垂直方向排列,起点在下沿。

- 阅读剩余部分 -

ES6(七)--class的继承

关键字extends

在ES6下,class的继承可以通过关键字extends实现,比如

class A {
    constructor(a) {
        console.log(a);
    }
}

class B extends A {}

new A("aaa");//aaa
new B("aaa");//aaa

1.上面定义了一个a类,b类使用关键字extends继承了a类所有的属性和方法。b类此时没有定义任何方法,也就是说b类把a类复制了一遍,所以new a("aaa")new b("aaa")结果完全一样

2.a类的constructor方法就是a的构造函数

3.如果类本身不需要接收参数,那么可以省略构造函数,当省略了构造函数,这个constructor函数会自动添加

- 阅读剩余部分 -

ES6(六)--class的基本使用

js的传统方法是通过构造函数,定义并生成新对象,是一种基于原型的面向对象系统,在ES6中新增了类的概念,可以使用class关键字声明一个类,之后以这个类来实例化对象。

生成实例对象的传统方法

const Obj = function (a, b) {
    this.a = a;
    this.b = b;

    return this;
}

Obj.prototype = {
    constructor: Obj,
    print: function () {
        console.log(this.a + " " + this.b);
    }
}

new Obj(1, 2).print();//1 2

- 阅读剩余部分 -

ES6(五)--iterator和for-of循环

什么是Iterator

Iterator是一种接口,为不同的数据结构提供统一的访问机制。任何数据结构只要部署了Iterator接口,就可以完成遍历,而且这种遍历操作是依次遍历该数据结构的所有成员

Iterator遍历器的作用

1.为各种数据结构提供一个统一的,简便的访问接口

2.使得数据结构的成员能够按照某种次序排列

3.ES6新增的遍历for...of循环,Iterator接口主要供for...of消费

- 阅读剩余部分 -

ES6(四)--数据结构Map

Map是键值对的集合,类似于对象,当时键的范围不限于字符串,各种类型的值,包括对象都可以当做键。也就是说Object结构提供了“字符串-值”的对应,Map结构提供了“值-值”的对应,是一种更完善的Hash结构。

创建一个Map

const map = new Map([
    ["a", 1],
    ["b", 2]
]);

- 阅读剩余部分 -

ES6(二)--变量的解构赋值

解构赋值本质上是一种匹配模式,只要两边的模式相同,那么左边的变量就可以被赋予对应的值

数组的解构赋值

ES5中,给多个变量赋值可能是这样

var a = 1, b = 2, c = 3;
//或者这样
var a = 1;
var b = 2;
var c = 3;

- 阅读剩余部分 -