作业:JavaScript(数组篇-poker)给我的徒弟出个题。。。记得早点写完,然后大家3人可以早点打牌了
吐槽一下:“今天实际上我左思右想,写个什么东西好呢!手上的笔转了半天....最后还是给自己留点余地!看着他们什么酒店管理系统,呼叫中心系统之类的....简直是把自己固定死了!感觉一撸到底的感觉!!!我们是程序员所以我觉得要思想灵活点HOHO。。。”
今天只是想写一篇关于JavaScript数组的一篇文章
以前我认为我已经完全把数组掌握了!但是去年面试的时候被问呆了!!瞬间感觉自己萌萌哒!!所以把书看完了不算会!所以这次为了让我的徒弟能够不再犯我当年的错误。。。哼哼!我决定让她来一次实战!!!不能让她出去丢我的脸(尽管她们都说我已经没脸了----囧!!)
好吧核心重点来了
一副牌54张牌1-13*4+大小王2张14,15
- var Poker=
new Array("1","1","1","1",
"2","2","2","2",
)一个长长的数组额,我也不知道争上游这个游戏!有木有12345这个排序,但貌似有23456,算了就算他有吧
"3","3","3","3",......."14","15"
好吧然后是一个神奇的发牌循环吧,恶心的事情来了
大概的想法是
首先一个大的循环
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创建一个漂亮的页面,但这还不够,它只是静态页面 ...
随机推荐
- 关于hive的优化
首先hive本质就是mapreduce,那么优化就从mapreduce开始入手. 然而mapreduce的执行快慢又和map和reduce的个数有关,所以我们先从这里下手,调整并发度. 关于map的优 ...
- 吉他软件Guitar Pro播放无声音的解决方法
系统环境:适用于Windows操作系统和macOS的Guitar Pro . 问题表现:已成功安装Guitar Pro ,但用Guitar Pro 播放时没有任何声音或播放失真. 解决方案:首先确保安 ...
- Jenkins 构建运行java程序
我们将在Jenkins建立执行一个简单的 HelloWorld 应用程序,构建和运行Java程序.打开网址:http://localhost:8080/jenkins 第1步- 转到Jenkins 仪 ...
- 微软职位内部推荐-Senior Program Manager
微软近期Open的职位: Title: Senior Program Manager – Bing Multimedia Relevance Group: Search Technology Cent ...
- PAT甲题题解-1101. Quick Sort (25)-大水题
快速排序有一个特点,就是在排序过程中,我们会从序列找一个pivot,它前面的都小于它,它后面的都大于它.题目给你n个数的序列,让你找出适合这个序列的pivot有多少个并且输出来. 大水题,正循环和倒着 ...
- python发送邮件脚本ssl 465端口
#coding:utf8 from smtplib import SMTP_SSL from email.header import Header from email.mime.text impor ...
- BugPhobia开发篇章:Beta阶段第III次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第三次Scrum Meeting 敏捷开发起始时间 2015/12/15 00:00 A.M. 敏捷开发终止时间 2015/12/15 23 ...
- LINUX内核分析第二周学习总结——操作系统是如何工作的
LINUX内核分析第二周学习总结——操作系统是如何工作的 张忻(原创作品转载请注明出处) <Linux内核分析>MOOC课程http://mooc.study.163.com/course ...
- 用C语言编程自动生成四则运算
#include<stdio.h>#include<stdlib.h>#include <time.h>#define N 30main(){ int a,b,k, ...
- SSR & Next.js & Nuxt.js
SSR & Next.js & Nuxt.js Server Side Rendering https://nextjs.org/ https://nuxtjs.org/ SSR &a ...