JavaScript/js交互 贪吃蛇项目实战【爱创课堂专业前端培训】

一、 内置构造函数
1.1 String
这是一个内置构造函数, 它是string值类型的对应包装类型

这也就是为什么字符串可以调用方法的原因

举例:

1 // String 是 string值类型的对应包装类型

2 var str = “abcdefg”;

3 console.log(str[1]);

4 // 转为对应的包装类型

5 var str_obj = new String(str);

输出:

JavaScript/js交互 贪吃蛇项目实战【爱创课堂专业前端培训】_第1张图片

1.2 Boolean
这是一个内置构造函数, 它是bool值类型的对应包装类型

举例:

1 // Boolean

2 // 它是bool值类型的对应包装类型

3 var f = false;

4 // 转为对应的包装类型

5 var f_obj = new Boolean(f);

6 // f是new Boolean对象的原始值, 而new Boolean是f的对应包装类型

7 // !f true !f_obj false 因为f_obj是一个对象

8 // console.log(f_obj.valueOf())

1.3 Number
这是一个内置构造函数, 它是number值类型的对应包装类型

举例:

1 // Number

2 var num = 3;

3 // 转为对应的包装类型

4 var num_obj = new Number(num);

5

6 // Number本身不是一个安全类, 当Number自执行的时候, 会作为类型转为函数使用

7

8 var a = “3a”;

9 var aa = Number(a);

二、 内置构造函数之间的关系
所有的函数都是Function的实例

所有的对象都是Object的实例

函数也是对象

三、 贪吃蛇
我们决定使用面向对象的方式书写贪吃蛇游戏

游戏是最合适使用面向对象的方式书写
我们把整个游戏看成是一个“游戏”类

游戏类可以有各种各样的属性

我们可以把贪吃蛇中的蛇作为一个属性

还有地图属性

食物属性

障碍物属性

我们可以把蛇当做一个“蛇”类

有数组属性

有方向属性

有增长方法

有移动方法

可以把地图看成一个地图类

有行属性

有列属性

有宽度属性 (总宽)

有高度属性 (总高)

有一个数组属性,数组中存放的是每一个小方格

可以把食物看成一个食物类

有一个x属性

有一个y属性

img属性

可以把障碍物看成是一个类

有一个数组属性

你可能感兴趣的:(爱创课堂专业前端培训)