如何用面向对象的方法用写JS

JavaScript019

如何用面向对象的方法用写JS,第1张

1,html写好界面,定义好class和id

2,为了模拟出扑克牌21点游戏,应先定义卡牌池中有1-10,J,Q,K每个数字和字母分别有4个

3,js中实现界面交互,如点击开始按钮,随机从卡牌池中抽取一个数字或字母存入临时变量a,并附于点数之和num其相应的点数

4,点击抽牌按钮随机从卡牌池剩余的卡牌中抽取,对应的卡牌存入变量a中,点数之和num=num+本次抽卡的点数

5,当num>21时提示玩家爆点,小于21点时可选按钮抽牌,等于21点时提示恭喜之类的话,如果点击完成抽牌则记录此玩家点数

6,同理可扩充玩家至2,3,4....个,原理相同,不同玩家存储对应的变量就可以了,最终通过所有<=21点的玩家num,num1,num2来判断输赢

7,同理可设置庄家,庄家在与其他玩家点数相同时赢得对方

8,在此基础上就能增添许多功能了,比如每个玩家默认100金币,有底注,每轮开始的时候可加注,如玩家不跟则底注输掉无法参加游戏,等等之类的各种规则随便发挥

实话说学习是没有捷径的,最多也就是有一些学习的方法和技巧。关于学习JavaScript也就是js我分享一下我这个菜鸟的学习方法,只是个人的一些看法,不喜勿喷。

1、基础要学的好

学过js的都是知道的,js的一些基础的语法和一些变成语言是不一样的,所以需要额外的注意一些基础的语法,举例来说:作用域,一般的编程语言都是全局变量函数外有效,函数内的变量函数内有效,而js是不一样的,js的全局变量函数外和函数内都有效,函数内的函数只函数内有效。还有js是基于对象的语言,但是为了支持面向对象的编程思想,js使用函数来模拟类或者是对象的概念,这些都是比较难理解的,含有一些js的地层东西如原型链、上下文等也是非常的不好理解,这就需要基础的知识一定要扎实才能行。

2、多练习和实践

其实学习编程都是这样的,多动手多思考是学习编程语言的最好办法,很多东西看起来简单但是做起来就非常难了,解决的方法是学习js要和做网页特效联系起来,毕竟js的一个很大的应用方向就是实现网页的效果和一些交互,所以学习基础的同时要试着使用原生的js代码来实现一些网页特效,从中可以学到js这门语言的博大精深。

2、学习面向对象的编程思想

虽然js对于面向对象编程的支持不是很完美,但是一些js的大神使用了一些很多的方法,如构造函数等模拟了一些比较完整的面向对象编程,所以难点也出来了,那就是js的面向对象要比其他的语言复杂难理解。

4、学习js的一些框架

使用原生的js进行开发太难了,但是我们可以通过js的框架来解决这个问题,基础的框架如jQuery,还有比较高级的框架如angularjs都是很不错的东西,只是js原生学的好,这些框架也就比较好理解了

对象的字面量 var obj = {}

创建实例对象 var obj = new Object()

原型模式:function clock(hour){} fn.prototype.hour = 0new clock()首先,每个函数都有一个prototype(原型)属性,这个指针指向的就是clock.prototype对象。而这个原型对象在默认的时候有一个属性constructor,指向clock,这个属性可读可写。而当我们在实例化一个对象的时候,实例newClock除了具有构造函数定义的属性和方法外(注意,只是构造函数中的),还有一个指向构造函数的原型的指针,ECMAScript管叫[prototype]],这样实例化对象的时候,原型对象的方法并没有在某个具体的实例中,因为原型没有被实例。

构造函数模式 function fn(){} , new fn()

工厂模式:用一个函数,通过传递参数返回对象。function fn(params){var obj =new Object()obj.params = paramsreturn obj},fn(params)