作业:JavaScript(数组篇-poker)给我的徒弟出个题。。。记得早点写完,然后大家3人可以早点打牌了
吐槽一下:“今天实际上我左思右想,写个什么东西好呢!手上的笔转了半天....最后还是给自己留点余地!看着他们什么酒店管理系统,呼叫中心系统之类的....简直是把自己固定死了!感觉一撸到底的感觉!!!我们是程序员所以我觉得要思想灵活点HOHO。。。”
今天只是想写一篇关于JavaScript数组的一篇文章
以前我认为我已经完全把数组掌握了!但是去年面试的时候被问呆了!!瞬间感觉自己萌萌哒!!所以把书看完了不算会!所以这次为了让我的徒弟能够不再犯我当年的错误。。。哼哼!我决定让她来一次实战!!!不能让她出去丢我的脸(尽管她们都说我已经没脸了----囧!!)
好吧核心重点来了
一副牌54张牌1-13*4+大小王2张14,15
var Poker=new Array("1","1","1","1","2","2","2","2","3","3","3","3",......."14","15")一个长长的数组额,我也不知道争上游这个游戏!有木有12345这个排序,但貌似有23456,算了就算他有吧
好吧然后是一个神奇的发牌
循环吧,恶心的事情来了
大概的想法是
首先一个大的循环
for(i<0;i<54;i++){
因为逻辑太复杂了(所以我往简单的方法写了)
然后里面要产生个随机数(1-54)还要递减,//因为每次随机发一次牌,数组的长度-1
如果是复杂的写法的(要第一次发给A,第二次发给B,第三次发给C的)但是(貌似给你们难度大了点所以)
}
简单的方法把随机抽到的字放到一个新数组里面(然后重新排列)果然我还是很仁慈的-_-//
一共有3个人
A
B
C
JavaScript slice()
然后抽取数组第1个到第13给A
然后抽取数组第14个到第27给B
然后抽取数组第28个到第54给C
这个时候还要做出一个判定了(花色的判定!!!好吧好吧!我放过你了!就让你写在数组里面吧)
...然后你就把这里完成了!!!剩下的判定后天写吧
产生随机数的方法:在这里!!
JavaScript Math.random()内置函数
random函数返回值
返回0和1之间的伪随机数,可能为0,但总是小于1,[0,1)
random函数示例
//返回随机数
document.write(Math.random());
//返回10-20的随机数
document.write(Math.random()*(20-10)+10);
//返回指定范围的随机数(m-n之间)的公式
document.write(Math.random()*(n-m)+m);
作业:JavaScript(数组篇-poker)给我的徒弟出个题。。。记得早点写完,然后大家3人可以早点打牌了的更多相关文章
- 二、JavaScript语言--JS基础--JavaScript进阶篇--数组
1.什么事数组 我们知道变量用来存储数据,一个变量只能存储一个内容.假设你想存储10个人的姓名或者存储20个人的数学成绩,就需要10个或20个变量来存储,如果需要存储更多数据,那就会变的更麻烦.我们用 ...
- Javascript进阶篇——(数组)笔记整理
什么是数组数组是一个值的集合,每个值都有一个索引号,从0开始,每个索引都有一个相应的值,根据需要添加更多数值. <script type="text/javascript"& ...
- 一步步学习javascript基础篇(3):Object、Function等引用类型
我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...
- JavaScript入门篇 编程练习
编程挑战 一.定义"改变颜色"的函数 提示: obj.style.color obj.style.backgroundColor 二.定义"改变宽高"的函数 提 ...
- 慕课网JavaScript入门篇课程笔记
1.js注释很重要 单行注释,在注释内容前加符号 “//”. <script type="text/javascript"> document.write(" ...
- #笔记#JavaScript进阶篇一
#JavaScript进阶篇 http://www.imooc.com/learn/10 #认识DOM #window对象 浏览器窗口可视区域监测—— 在不同浏览器(PC)都实用的 JavaScrip ...
- javascript数组浅谈1
最近心血来潮要开始玩博客了,刚好也在看数组这块内容,第一篇就只好拿数组开刀了,自己总结的,有什么不对的地方还请批评指正,还有什么没写到的方面也可以提出来我进行完善,谢谢~~ 首先,大概说说数组的基本用 ...
- 6、JavaScript进阶篇③——浏览器对象、Dom对象
一.浏览器对象 1. window对象 window对象是BOM的核心,window对象指当前的浏览器窗口. window对象方法: 注意:在JavaScript基础篇中,已讲解了部分属性,windo ...
- 4、JavaScript进阶篇①——基础语法
一.认识JS 你知道吗,Web前端开发师需要掌握什么技术?也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HTML+CSS创建一个漂亮的页面,但这还不够,它只是静态页面 ...
随机推荐
- 父类与子类this相关问题
1.SinglyLinkedList: package No3_PolySinglyList; /*实现 带头结点的单链表SinglyLinkedList类*/ public class Singly ...
- 20135220谈愈敏Linux Book_5
第五章 系统调用 内核提供了用户进程与内核进行交互的一组接口. 应用程序发出请求->内核负责满足 目的:保证系统稳定可靠 5.1 与内核通信 系统调用在用户空间进程和硬件设备之间添加了一个中间层 ...
- Qrcode生成二维码的参数总结 及最小尺寸的测试
Qrcode生成二维码,做过很多实验,探索最小规格的二维码到底是多少尺寸,和最高规格的二维码到底是多大尺寸.现在我总结总结: 有两种思路: 1.生成规格高的二维码,然后压缩到自己想要的尺寸的二维码.这 ...
- TUANDUIZUOYE
[组队后的项目整体计划安排] - 学习:先学习基础知识,懂得该做什么,后边做边学,在实践中成长: - 项目:根据迭代原则,先完成较简单的功能,而后进攻较难功能,保证项目的最终完成度. 阶段序列 ...
- Mininet入门与实战 3.9参课记录
Mininet入门与实战 Mininet简介 由来:斯坦福大学发明,基于Linux Container架构开发的进程虚拟化网络仿真工具,交换机支持OF协议. 使用情况: 控制器,不推荐自带控制器(bu ...
- Parameter not found的出现的原因
with dataM.Q_xfgl_dhjf do begin close; sql.Clear; sql.Add('insert into jfdh(jfdh_id, ...
- [51CTO]服务器虚拟化开源技术主流架构之争
服务器虚拟化开源技术主流架构之争 http://virtual.51cto.com/art/201812/589084.htm 大部分客户已经是KVM+OpenStack的架构了 我所见到的 工商云 ...
- IntelliJ IDEA中文乱码问题
转自 https://blog.csdn.net/m0_37893932/article/details/78280663 1 file->settings->appearence里面有 ...
- MongoDB高级操作(2)
查询方法-常用查询方法 查询多条数据 --db.集合名称.find({条件文档}) 查询一条数据 --db.集合名称.findOne({条件文档}) 结果格式化 --pretty()方法 --db.集 ...
- 【刷题】LOJ 6015 「网络流 24 题」星际转移
题目描述 由于人类对自然资源的消耗,人们意识到大约在 2300 年之后,地球就不能再居住了.于是在月球上建立了新的绿地,以便在需要时移民.令人意想不到的是,2177 年冬由于未知的原因,地球环境发生了 ...