javascript 初学教程及五子棋小程序的简单实现
发布时间 - 2026-01-11 02:09:44 点击率:次一.JavaScript简介

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
二.hbulider工具的使用
1)
hbulider的特点:
1.飞快的编码速度
2.HBuilder直接创建移动App,打包为ios或Android原生安装包
3.HTML5语法、HTML5+语法、三大浏览器扩展语法,尽收HBuilder中
4.绿柔设置界面,更加护眼
2)
下载hbulider安装包
百度搜索hbulider,进入官方网站,点击右上角 download 按钮,即可下载。
4)
下载完成后可以看到下载到的是一个压缩包,打开下载的压缩包,将压缩包内的文件解压到希望存放的位置,点击确定。
5)
解压完成后,找到解压位置,点击hbulider.exe文件,开始安装。
6)打开后选择一个一般用来存放代码的文件夹作为代码目录。
7)根据自己的实际情况,选择所能看清楚的颜色块,然后点击下方 生成适合你的视觉方案 生成一个舒适的配色。
8)选择喜欢的视觉主题,点击下面的 确认并关闭 ,完成设置。
9)完成后进入到欢迎向导,如图,到此安装完成。
三.用hbulider写一个五子棋小程序
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>五子棋游戏</title>
</head>
<body>
<canvas id="myCanvas" width="570" height="570"
style="border: 2px solid #abcabc"></canvas>
<!--
作者:offline
时间:2017-07-03
描述:使用js代码控制游戏逻辑
-->
<script type="text/javascript">
//获取canvas的标签
var ChessCanvas = document.getElementById("myCanvas");
//获取画布
var gameCanvas = ChessCanvas.getContext("2d");
//定义棋盘大小
var map = 25;
//棋子大小
var chessSize = 24;
//获取下棋的坐标
var x = y = 0;
//棋子的颜色
var isRed = true;//==true的该下红棋 否则下黑棋
var color = "#000000";
//棋子数组 二维数组
//保存所下的棋子 0:未下;1:下红棋;2:下黑棋
var chessData = new Array(23);
for(var i=0;i<23;i++)
{
chessData[i] =new Array(23);
for(var j=0;j<23;j++)
{
chessData[i][j] = 0;
}
}
//所下棋子在棋子数组的位置
var i,j;
//绘制棋盘
for(var i=0;i<23;i++)
{
gameCanvas.moveTo(10,10+i*map);
gameCanvas.lineTo(560,10+i*map);
gameCanvas.moveTo(10+i*map,10);
gameCanvas.lineTo(10+i*map,560);
gameCanvas.stroke();//画
}
//创建函数,完成下棋
function addChess(x,y)
{
//下棋 画小圆圈 角度转弧度 π/180×角度 弧度变角度 180/π×弧度
gameCanvas.beginPath();//开始
gameCanvas.arc(x,y,12,0,Math.PI*2,true);//画棋子
gameCanvas.fillStyle = color;
gameCanvas.fill();
gameCanvas.closePath();//结束
if(color=="#000000")
{
color = "#ff0000";
//黑棋
chessData[i][j] = 2;
}else{
color = "#000000";
//红棋
chessData[i][j] = 1;
}
}
//重复调用 在做坦克大战之类游戏 需要使用。。。。。。。
// window.setInterval(函数,时间);
//游戏是否结束
// function isGameWin()
//如果是人机对战版,则需要下棋的AI 如果不是人机对战 则下完棋后,提醒对方下棋
// function gameAI()
//做鼠标监听 游戏逻辑
document.onmousedown= function(e)
{
window.onclick = function (){
//获取下棋的坐标
i = Math.round((e.x-10)/25);
j = Math.round((e.y-10)/25);//边界不能下
//判断该位置x,y是否可以下棋
x = i*25+10;
y = j*25+10;
//判断该位置ij是否有棋子
if(chessData[i][j]==0)
{
//下棋
addChess(x,y);
}else{
alert("不好意思!你来晚了,已经被对方捷足先登了");
}
}
}
</script>
</body>
</html>
代码不全,会陆续加上。
以上这篇javascript 初学教程及五子棋小程序的简单实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# javascript
# 五子棋
# 基于JavaScript实现五子棋游戏
# JS canvas绘制五子棋的棋盘
# js实现简单五子棋游戏
# JavaScript实现网页版五子棋游戏
# JavaScript实现五子棋游戏的方法详解
# JavaScript实现五子棋小游戏
# JS实现五子棋完整步骤及功能扩展
# 给大家
# 五子
# 黑棋
# 完成后
# 压缩包
# 所下
# 对战
# 自己的
# 的是
# 安装包
# 是在
# 是一种
# 鼠标
# 捷足先登
# 三大
# 希望能
# 可以看到
# 如果不是
# 被称为
# 你来
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
湖南网站制作公司,湖南上善若水科技有限公司做什么的?
android nfc常用标签读取总结
消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工
昵图网官网入口 昵图网素材平台官方入口
教学论文网站制作软件有哪些,写论文用什么软件
?
佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】
如何用腾讯建站主机快速创建免费网站?
Laravel怎么调用外部API_Laravel Http Client客户端使用
高端建站如何打造兼具美学与转化的品牌官网?
如何自定义建站之星网站的导航菜单样式?
如何快速生成橙子建站落地页链接?
高防服务器租用指南:配置选择与快速部署攻略
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】
HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】
如何在Windows环境下新建FTP站点并设置权限?
网站建设整体流程解析,建站其实很容易!
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
大连 网站制作,大连天途有线官网?
Laravel中的withCount方法怎么高效统计关联模型数量
Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程
Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】
Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面
香港网站服务器数量如何影响SEO优化效果?
怎样使用JSON进行数据交换_它有什么限制
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
再谈Python中的字符串与字符编码(推荐)
如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)
如何批量查询域名的建站时间记录?
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】
,在苏州找工作,上哪个网站比较好?
Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】
Python企业级消息系统教程_KafkaRabbitMQ高并发应用
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】
网站制作报价单模板图片,小松挖机官方网站报价?
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
如何在 Pandas 中基于一列条件计算另一列的分组均值
Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析
HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】
韩国服务器如何优化跨境访问实现高效连接?
Laravel怎么导出Excel文件_Laravel Excel插件使用教程
🚀拖拽式CMS建站能否实现高效与个性化并存?
如何用wdcp快速搭建高效网站?
谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程
标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析
轻松掌握MySQL函数中的last_insert_id()
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】

