新建index.js通过打印process我们可以看到一些配置信息
实例小游戏(石头剪刀布)
首先我们会用到process.argv,这个变量我们可以获取到运行node所带的参数
//index.js
console.log(process.argv)
//terminal
PS D:\Node\nodejs> node index.js rock
[ 'F:\\node\\node.exe', 'D:\\Node\\nodejs\\index.js', 'rock' ]
这里可以看到终端运行 node index.js rock时,会在process.argv中最后添加一个传入的参数,可以通过变量记录用户的行为
记录用户行为
//index.js
var playerAction = process.argv[process.argv.length - 1];
console.log(playerAction)
//terminal
PS D:\Node\nodejs> node index.js rock
[ 'F:\\node\\node.exe', 'D:\\Node\\nodejs\\index.js', 'rock' ]
PS D:\Node\nodejs> node index.js rock
rock
电脑随机生成
通过Math.random()方法生成3以内随机数来返回计算机行为
//index.js
var random = Math.random() * 3;
if(random < 1) {
var computerAction = 'rock';
} else if (random > 2) {
var computerAction = 'scissor';
} else {
var computerAction = 'paper'
}
返回结果
接下来就可以通过判断用户行为以及电脑行为返回相应的结果
//index.js
if (computerAction === playerAction) {
console.log('平局');
} else if (
(computerAction === 'rock' && playerAction === 'scissor') ||
(computerAction === 'scissor' && playerAction === 'paper') ||
(computerAction === 'paper' && playerAction === 'rock')
) {
console.log('你输了')
} else {
console.log('你赢了')
}
//terminal
PS D:\Node\nodejs> node index.js rock
你赢了
PS D:\Node\nodejs> node index.js rock
你赢了
PS D:\Node\nodejs> node index.js rock
你输了
PS D:\Node\nodejs> node index.js rock
平局
PS D:\Node\nodejs> node index.js rock
你赢了
PS D:\Node\nodejs>
完整代码
var playerAction = process.argv[process.argv.length - 1];
var random = Math.random() * 3;
if(random < 1) {
var computerAction = 'rock';
} else if (random > 2) {
var computerAction = 'scissor';
} else {
var computerAction = 'paper'
}
if (computerAction === playerAction) {
console.log('平局');
} else if (
(computerAction === 'rock' && playerAction === 'scissor') ||
(computerAction === 'scissor' && playerAction === 'paper') ||
(computerAction === 'paper' && playerAction === 'rock')
) {
console.log('你输了')
} else {
console.log('你赢了')
}