首页 > 其他分享 >JS基础逻辑练习—含答案解释

JS基础逻辑练习—含答案解释

时间:2024-08-11 11:24:47浏览次数:7  
标签:case console log ++ 练习 JS 60 含答案 var

1、代码下列代码,并打印结果:

   1)console.log(NaN+NaN) // NaN
   2)console.log(NaN+1)   // NaN
// 解释:NaN(Not a Number)表示不是一个数字,因此 NaN 与任何值都不相等,包括 NaN 本身。
   3)console.log(NaN==NaN) => false 
// 解释:isNaN()这个函数的作用是判断传入的参数是否为NaN,如果是NaN,这个函数就会返回true,反之会返回false    
   4)console.log(isNaN(123))   // false
   5)console.log(isNaN('abc')) // true
   6)console.log("5"+1)        //  51,类型为:string
   7)console.log("5"*1)        //  5,类型为:number
   8)console.log(5+1)          //  6,类型为:number
   9)console.log("5"*"abc")    // NaN
// 解释:parseInt("12a.12") = 12,再拼接字符串12 = 1212 
   10)console.log(parseInt("12a.12")+"12") //  1212,类型为:string
// 解释:parseInt("12a.12") = 12,此时它是数字类型,再加上右侧的数字类型 = 24 
   11)console.log(parseInt("12a.12")+12) // 24,类型为:number

2、解释下列每一行代码的含义,并输出结果:

   1)var a = 123        => 数字类型的123,赋值给变量a
   2)var b = 123        => 数字类型的123,赋值给变量b
   3)a += b             => 变量a的值 =  a + b 的值 => 123+123 = 246
   4)console.log(a)     => a的值为246
   5)console.log(b)     => b的值为123

3、解释每行代码,并输出结果:

   1)var a = 1          => 数字类型的1,赋值给变量a
   2)var b = a++        => a为后置++,则先返值给b,再自增1
   3)console.log(a,b)   => a为2,b为1

4、解释每行代码,并输出结果:

   1)var a = 1 
   2)var b = ++a      => a为前置++,则先自增1,然后返值给b 
   3)console.log(a,b) => a为2,b为2、

5、解释每行代码,并输出结果:

   1)var a = 1 
   2)b = a++ + ++a + a++  => b = 1 + 3 + 3 = 7
          解释:
               1、a++为1,因为是后置++,所以先赋值后计算 => 1
               2、++a此时因为a++后变成了2,又因为前置++,所以再次自增 => 3
               3、a++因为是后置++,所以先返值,再自增 => 3
                  所以:b = 1 + 3 + 3 = 7
   3)console.log(a,b) => a为4,b为7 
          解释:a从1自增3次,则为4 => 这里不要忘记加上之前的1

6、编写程序

6.1、题目1:

  1. 题目:某施工队,修筑水渠需要花费12345611秒,请将其转化为当前格式:小时分钟
  2. 思路
    • 秒数 => 总时间 % 60 的取余,time / 60 = 205760分钟,剩余的余数为11,则为秒数
    • 分钟 => 总时间 / 60 = 205760分钟,再 % 60 = 3429小时,剩下的余数为21,则为分钟
    • 时钟 => 总时间 / 60 = 205760分钟,再 / 60 = 3429小时,再 % 24 = 142,余数21,则为小时
    • 天数 => 总时间 / 60 = 205760分钟,再 / 60 = 3429小时,再 / 24 即为天数,不需要取余了
  3. 代码
var time = 12345611
var seconds = time % 60 // 得到秒数:11
var second = parseInt(time / 60 % 60) // 得到分钟数:20
var hours = parseInt(time / 60 / 60 % 24)  // 得到时钟数:21
var days = parseInt(time / 60 / 60 / 24 )  // 得到天数142天
console.log("需要花费:"+days+"天,"+hours+"小时,"+second+"分,"+seconds+"秒");

6.2、题目2

  1. 题目:在输入弹框中输入一个1~12的数字,代表月份,根据输入的数字进行输出,计算当月有多少天
  2. 代码
var month = prompt("请输入1~12月份的数值");
switch (month) {
    case "1":
    case "3":
    case "5":
    case "7":
    case "8":
    case "10":
    case "12": alert("这个月有31天"); break;
    case "4":
    case "6":
    case "9":
    case "11": alert("这个月有30天"); break;
    case "2" :
              var year = prompt("请输入年份");
              if(year % 4 === 0 && year % 100 !==0 || year % 400 ===0){
                   alert("是闰年,则2月有29天");
              }else{
                   alert("非闰年,则2月有28天")
              }; break;
                   default: alert("请输入正确的月份"); break; => 防止用户输入除1~12以外的数字
              }

6.3、题目3

  1. 题目:输入数字,判断数字是否为奇数或者是偶数
  2. 代码
var num = prompt("请输入数字");
if(num % 2 === 0){
    alert("数值为偶数")
}else{
    alert("数值非偶数")
}

6.4、题目4

  1. 题目:输入123 => 打印一季度,456打印 => 二季度,789打印 => 三季度,10,11,12打印=>四季度
  2. 代码
var num = prompt("请输入对应的月份信息,查询当前季度");
switch (num) {
     case "1":
     case "2":
     case "3": alert("当前月份为:一季度"); break;
     case "4":
     case "5":
     case "6": alert("当前月份为:二季度"); break;
     case "7":
     case "8":
     case "9": alert("当前月份为:三季度"); break;
     case "10":
     case "11":
     case "12": alert("当前月份为:四季度"); break;
     default: alert("请输入正确的月份信息"); break;     
 }

6.5、题目5

  1. 题目:判断输入的数值 => 如果小于10,则就把前面补上0,如果大于10的话不补0
  2. 代码
var num = prompt("请输入数值");
if(num < 10){
   num = "0" + num; // 这里使用了字符串拼接的方式,在数值前面加上了0
   alert("当前值<10,则数值为:" + num)
}else{
   alert("当前值>10,则数值为:" + num)
}

标签:case,console,log,++,练习,JS,60,含答案,var
From: https://blog.csdn.net/2301_78675670/article/details/141102849

相关文章

  • Node.JS - 基础(示例代码)
    目录A.Hello1.创建js文件2.编写代码3.编译4.输出结果B.建立HTTP服务器C. 异步式I/O与事件式编程D.模块和包E.调试A.Hello1.创建js文件使用VSCode创建一个.js文件,比如2.编写代码打印logconsole.log("Hello");3.编译4.输出结果B.建立HTTP服务......
  • 583java jsp SSM社区老年人关怀服务系统医疗保险老人身体状况管理(源码+文档+运行视频+
    项目技术:SSM+Maven+Vue等等组成,B/S模式+Maven管理等等。环境需要1.运行环境:最好是javajdk1.8,我们在这个平台上运行的。其他版本理论上也可以。2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;3.tomcat环境:Tomcat7.x,8.x,9.x版本均可4.硬件环境:windows7/8/10......
  • 570java jsp SSM杂志在线阅读网站系统(源码+文档+运行视频+讲解视频)
     项目技术:SSM+Maven+Vue等等组成,B/S模式+Maven管理等等。环境需要1.运行环境:最好是javajdk1.8,我们在这个平台上运行的。其他版本理论上也可以。2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;3.tomcat环境:Tomcat7.x,8.x,9.x版本均可4.硬件环境:windows7/8/1......
  • js全屏,监听页面是否全屏
    要检测页面是否处于全屏模式,可以使用JavaScript提供的FullscreenAPI。以下是一个简单的示例代码,演示如何检测页面是否处于全屏模式://检测页面是否处于全屏模式functionisPageFullscreen(){return!!(document.fullscreenElement||document.mozFullScreenElemen......
  • wechat crawler url拼接 url解析 微信爬虫 json序列化 反序列化
    WechatPublicRequest\Program.csusingSystem.Collections.Specialized;usingSystem.Diagnostics;usingSystem.Web;usingNewtonsoft.Json;classProgram{staticasyncTaskMain(){varlatestTxtFilePath=GetLatestTxtFilePath();......
  • JSP广元市旅游网站6gj5o(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统功能:用户,景点类型,景点信息,房间类型,酒店民宿,酒店预约,出游租车,租车信息,旅游攻略,旅游社团,跟团预约技术要求:开发语言:JSP前端使用:HTML5,CSS,JSP动......
  • JSP公司薪酬管理系统1hqm4(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统功能:员工,部门信息,工资信息,请假信息,出勤信息技术要求:    开发语言:JSP前端使用:HTML5,CSS,JSP动态网页技术后端使用SpringBoot,Spring技术主数据库......
  • 基于nodejs+vue酒店预定管理系统[程序+论文+开题]-计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着旅游业的蓬勃发展,酒店业竞争日益激烈,如何高效管理酒店预定流程,提升客户体验,成为酒店管理者关注的焦点。传统的酒店预定方式往往存在信息不对称、预订流......
  • 基于nodejs+vue酒店在线管理系统[程序+论文+开题]-计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着互联网的普及和移动技术的飞速发展,传统酒店行业正经历着前所未有的变革。酒店顾客对于便捷、高效、个性化的服务需求日益增长,而传统的酒店管理模式已难......
  • 基于nodejs+vue酒店综合服务[程序+论文+开题]-计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景在旅游与酒店行业日益融合的今天,酒店已不仅仅是提供住宿的场所,而是成为了集住宿、餐饮、休闲、购物等多种服务于一体的综合服务平台。随着消费者对旅行体验......