JavaScript是计算机语言,JavaScript之基本语句
写在前面:前面的内容记录了JavaScript的一些基本概念,本次主要讲解一下JS中常用的语句。
和大多数其他编程语言一样,JS也主要包括:选择、循环、错误检测、函数等。JS的语句基本是由值、运算符、表达式、关键字和注释构成,但并不是语句一定包含所有以上要素。
计算机程序一般是指能够被计算机执行的一些列指令的集合。在编程语言中,这些指令被称为语句,JavsScript程序就是一系列的JavaScript语句集合。
一 选择语句
这里我打算用一个例子来说明,可能会更好理解:
1 var age = parseInt(prompt("please enter your age:"));
2 if(age < 0){
3 alert("are you sure?");
4 }else if(age > 120){
5 alert("you must be dead!");
6 }else{
7 alert("you are still alice!");
8 }
代码说明:if-else语句和其他区大多数编程语句一样。通过判断if后面的括号内的表达式的真假,决定是否执行紧跟其后的大括号内的代码。
上面的代码含义如下:第一行表示接受一个数字并保存在变量age中(现在不必在一parseInt()是什么东东)。
第二行代码在判断括号内的表达式是否成立,如果成立将执行第三行代码(我觉得他应该不会被执行,嘿嘿),然后
准备执行第四行。如果不成立,那么程序将跳过第三行,准备执行第四行。
第三行代码会弹出一个提示框。
第四行代码和第一行功能类似,判断age是否大与120,如果大于将执行第五行代码,否者将跳过,并准备执行第六行代码。
第五行代码也是弹出一个提示框。
第六行表示age即不满足if后面的条件,也不满足else if后面的条件,最终会被执行else后面的代码。
第七行也是弹出一个提示框。
如果有很多种情况,那我们岂不是要用很多if-else-if……?那样即难以阅读又难以维护。你当然不用那么做,JavaScript提供了另外一种选择的方式,请看下面的代码:
1 var myBirthdayMonth = parseInt(Math.random()*12+1);
2 switch(myBirthdayMonth){
3 case 1 : alert("你属鼠的。");
4 break;
5 case 2 : alert("你属牛的。");
6 break;
7 case 3 : alert("你属虎的。");
8 break;
9 //中间还有其他的属相
10 case 11 : alert("你属狗的。");
11 break;
12 default:alert("你属猪的。");
13 }
当有多种情况需要判断时,我们可以用switch-case语句。它的执行过程是把switch后括号捏的表达式的值分别依次和下面每一个case后面的值做比较,如果相等则执行该case后面的语句,执行完后若遇到break,则停止执行后面所有的语句(switch后大括号内的),并退出,如果前面所有的case 都无法匹配mybirthdayMonth,那么程序最终将执行default后面的语句。
上面的例子中我们假定了每个月就有一种属相,第一行代码是随机生成一个1--12的数字充当生日的月份(这里不必在意它是怎么实现的)。
二 循环语句
Javascript提供了多种循环语句,for循环,while,do-while。循环即指反复执行某一段代码。
1、for循环
1 for(var i = 1;i <= 10; i++){
2 console.log(i);
3 }
说明:var = 1;声明循环控制变量,i <= 10;判断循环条件,i ++更新控制变量(这里是以1为单元递增)。最终输出1-10.
简单的说以上循环实现的功能是:先初始化一个变量 i,初始值为1,然后判断i的值是否小于或等于10,若是,则执行大括号的代码(这里是在控制带打印出i的值),然后i的值加1,再判断i是否小于或等于10,一直循环到i的值大于10时,程序停止执行。
2、while循环
1 var i = 10;
2 while(i > 0){
3 console.log(i);
4 i--;
5 }
说明:首先声明一个变量i,while循环执行时会首先判断i > 0是否成立,若成立,则执行大括号内的代码(这里是先在控制台打印i的值,单后把i的值减1),执行完后再判断i > 10是否成立,往复循环,直到表达式不成立。如果一开始表达式就不成立,必须i初始化时是-1,那么大括号内部的代码将永远不会执行。
3、do-while循环
1 var i = 10;
2 do{
3 console.log(i);
4 i--;
5 }while(i > 0)
do-while循环和while循环执行过程几乎一样。不同点在于,它会先执行一次大括号内的代码,然后再开始判断。即使是i初始化时的值是-1,也会打印一次i的值,并把i的值减1。
三 异常和错误
1、throw
throw 语句抛出一个程序异常。
1 var userNumber = prompt("please enter a number:");
2 if(isNaN(userNumber)){
3 throw "this is not a number";
4 }else{
5 alert("yes,it is a number");
6 }
说明:userNumber接受一个来自用户输入的值,if判断输入值是否是数字,如果不是数字将抛出一个异常“this is not a number”。若是一个数字,将弹出“yes it is a number”。需要注意的是,当执行到throw是,该语句之后若还有其他语句,都将不会被执行。
2、try-catch
1 try{
2 alertt("hello world");
3 }catch(err){
4 console.log(err.message);
5 }finally{
6 console.log("eventually I'll be executed");
7 }
try定义了需要被检测的代码块。
catch定义了当检测到错误是需要被执行的代码,参数就是检测到的错误对象。包含了错的信息,代码等。
finally定义了无论是否检测到错误都将执行的代码。
try的好处是即使检测到错误,程序也不会被阻塞,它将继续往下执行。
3、自定义异常处理
通过throw和try-catch我们可以轻松自定义错误捕获和异常抛出。
1 var x = parseInt(Math.random() * 20);
2 try{
3 if(x == "") throw "为空";
4 if(isNaN(x)) throw "不是一个数字";
5 if(x > 10) throw "太大了";
6 if(x < 5) throw "太小了";
7 }
8 catch(err) {
9 console.log("输入的值 " + err;)
10 }
throw语句抛出的异常将被当做错误对线传给catch,最后在catch语句中我们可以获取到关于错误的具体情况了(这里是x的范围)。
最后:如果大家觉得这里些的不够清楚或有问题,建议大家上W3School或MDN查看详细教程。
标签:语句,基本,10,代码,JavaScript,while,执行,throw
来源: https://www.cnblogs.com/ruhaoren/p/11322748.html
JavaScript是计算机语言,JavaScript之基本语句相关推荐
- JavaScript基础第01天笔记——编程语言、计算机基础、JavaScript注释、JavaScript输入输出语句、变量的概念、变量的使用、数据类型、解释型语言和编译型语言、关键字和保留字
1 - 编程语言 1.1 编程 编程: 就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程. 计算机程序: 就是计算机所执行的一系列的指令集合,而程序全部都是用我们所掌 ...
- js复习:输出语句,js要不要写标点符号,let ,const(常量),JavaScript 数组,JavaScript 对象
js复习 1.输出语句 console.log() ,console.dir(),window.alert() 2.js要不要写标点符号? 3.let ,const(常量) 4.JavaScript ...
- JavaScript中的9种控制流语句
JavaScript中的9种控制流语句 ECMA-262规定了一组语句(也成为流控制语句).这些语句定义了 ECMAScript 中的重要语法,有 if 语句.do-while 语句.while ...
- (五)我的JavaScript系列:JavaScript的糟粕
泪眼问花花不语,乱红飞过秋千去. JavaScript的糟粕 JavaScript语言是一门集精华与糟粕于一体的语言.在JavaScript: the good parts中,便集中讨论了关于精华与糟 ...
- JavaScript强化教程——JavaScript 运算符
本文为 H5EDU 机构官方 HTML5培训 教程,主要介绍:JavaScript强化教程 -- JavaScript 运算符 JavaScript 算术运算符 算术运算符用于执行两个变量或值的运算 ...
- JavaScript学习13 JavaScript中的继承
JavaScript学习13 JavaScript中的继承 继承第一种方式:对象冒充 <script type="text/javascript">//继承第一种方式: ...
- JavaScript 逆向 ( 一 ) --- JavaScript 语法基础
js 逆向:https://www.cnblogs.com/wuxianyu/category/1940304.html js逆向2:https://www.cnblogs.com/wuxianyu/ ...
- JavaScript(三)—— JavaScript 函数/JavaScript 作用域/JavaScript 预解析/JavaScript 对象
本篇为 JavaScript 系列笔记第三篇,将陆续更新 JavaScript(一)-- 初识JavaScript/注释/输入输出语句/变量/数据类型 JavaScript(二)-- JavaScri ...
- 视频教程-JavaScript全套课程-JavaScript
JavaScript全套课程 拥有6年web前端和后端开发经验,4年授课经验,还曾在百度专业培训过网络营销课程,曾就职于联想集团和当当网,不仅有丰富的项目实战经验还有营销经验,综合实力较强,后入北京市 ...
最新文章
- luogu P1345 [USACO5.4]奶牛的电信Telecowmunication(建图技巧 - “割点”模板 、最小割)
- 老师学python可以干嘛-学 Python 都用来干嘛的?
- JQuery iframe 刷新效果
- Objective-C笔记
- Algorithm:数学建模大赛(国赛和美赛)的简介/内容、数学建模做题流程、历年题目类型及思想、常用算法、常用工具之详细攻略
- Eclipse和MyEclipse使用技巧--解决MyEclipse中的js报错的小方法
- 如何用C#和ADO.NET建立一个数据绑定网格(转载)
- [我的1024开源程序]30元写的广义误差分布函数
- Web前端主要学什么?这些知识要掌握
- vb 如何检测打印机是否联机_打印机提示该文档未能打印导致打印失败的原因及解决方法...
- 不要在构造和析构函数中调用虚函数
- 4.2 access函数实例
- android修改电量颜色,android状态栏电池颜色?
- VSTS For Testers读书笔记(5)
- 写出杨辉三角_认识杨辉三角
- Linux Redhat 6.4 LAMP 平台搭建
- 9-16 原生命令和redis-trib.rb对比
- 十大免费网络工具 瞬间提升业务效率
- APP推送系统工作原理
- windows11 任务栏 wifi、音量、电源还有通知无法左击弹出内容框
热门文章
- 游戏陪玩网站源码开发,搜索功能的实现与页面倒计时跳转
- 采用热电偶温度传感器实现超高精度温度跟踪控制的解决方案
- 服务器虚拟化中的系统迁移一——V2V迁移
- 如何用腾讯云打造一款微视频APP
- iphone导出视频 无法连接到设备_除了 iPhone 以外,AirPods 可以连接其他设备吗?...
- 数据压缩第八周作业——MPEG编码器
- 电脑上的Eclipse自动提示功能突然消失
- HTML标签及页面布局
- 【Spring Boot组件集成实战】集成Kaptcha谷歌验证码
- 从零到壹构建基于 Fabric-SDK-Go 的Web应用之三:完成Web应用