js上 八.语句
1.什么是语句
概念:在JavaScript中表达式是短语,语句就是整句或命令。
作用:用来执行以使某件事发生
特征:用 ; 结尾
Js中语句的常见形式:
ü 表达式语句
ü 复合语句
ü 声明语句
ü 条件语句
ü 循环语句
ü 跳转
#2.表达式语句
具有副作用的表达式式,就可以形成一个完整的语句,加上分号即可。

#3.复合语句
将多条语句联合在一起,形成一条复合语句。
用花括号括起来即可,也称为语句块。
如:

注意:
使用了{}之后,就不需要再添加分号了。(多此一举)
#4.声明语句
var和function都是声明语句,它们声明或定义变量和函数。
ü var
ü function
声明语句本身什么也不做,但它有一个重要的意义,通过创建变量和函数,可以更好的组织代码的语义。
#5.条件语句
通常,我们在编程语言中,有三大流程结构:
ü 顺序结构
ü 分支结构
ü 循环结构
顺序结构,是指我们的代码按照书写的顺序,自上向下挨个执行。
在实际开发中,仅仅只有顺序结构是不能满足需求的。
所以,也就有了分支结构和循环结构。
其中分支结构,就 对应到 js中的条件语句,换句话说,在js中,使用条件语句来实现分支结构的。
循环结构,就对应到js中的循环语句,换句话说,在js中,使用循环语句来实现循环结构的。
所谓的条件语句,是指在执行代码的时候,需要根据条件进行相应的执行。
在js中,提供了如下四种用法:
ü if
ü if...else
ü if...else if ... else
ü switch
#6.If语句:
if语句是但分支。
格式如下:
基本使用:

对应的代码如下:

**if ** 语句使用细节说明:
ü 关键字就是if,然后在if之后需要有一个(),中间的空格可有可无的。
ü ()中,可以书写的就是各种表达式。可以是最简单原子表达式,也可以是复杂的表达式。如if (a > 10 && a < 10),以关系运算和逻辑运算表达式居多。
ü 当if后面只有一条语句时,可以省略大括号,(不建议省略)
例如:

if条件,在没有**{}**的情况下,它只对后面的一条语句起作用。对后续的语句没有约束力。
这就导致,如果条件为真,后面所有的都执行,如果条件为假,只有if后面的第一条语句不执行,其它的后续语句仍然执行。
最佳实践:
ü 我们在写if语句的时候,尽量加上{},哪怕其中只有一条语句。
ü 在书写 { 的时候,尽量和if放在一行,不要新起一行。确保不出现任何问题,结束的 } 单独放一行,花括号中内容,需要缩进。

#7.if...else语句
双分支,二选一的情况
格式:

基本使用


关于if...else双分支,我们有一个简化的写法,使用三元运算符。?:
如下:
注意:我们的?:可以简化简单的if...else条件语句,但不能简化复杂的。
#小结:
\1. if语句的使用:注意if后面的括号会将内容隐式转为布尔类型
\2. if…else语句的使用
js上 八.语句的更多相关文章
- 使用ajaxfileupload.js上传文件
一直以来上传文件都是使用form表单上传文件,也看到过有人使用js上传文件,不过看起来蛮简单的也就没有怎么去理会.今天突然要使用这种方式上传文件,期间还遇到点问题.因此就记录下来,方便以后遇到这样的问 ...
- js 上传文件后缀名的判断 var flag=false;应用
js 上传文件后缀名的判断 var flag=false;应用 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional// ...
- js中退出语句break,continue和return 比较
js中退出语句break,continue和return 比较 在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是 ...
- js中退出语句break,continue和return 比较(转)
原链接:http://blog.163.com/ued_er/blog/static/199703159201210283107315/ js中退出语句break,continue和return 比较 ...
- js 上传下载(留着备用)
js 上传下载(留着备用) 下载文件 1. <a href="#" onClick="download()">下载文件</a> & ...
- js的break语句,continue语句,return语句
js的break语句,continue语句,return语句. 用的时候很容易混淆,有过一次泪奔的经历. break语句 break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch ...
- Swiper+JS 上拉刷新
JS // 上拉刷新 var page = 2; var isAjax = true;//加载数据前状态 $( ...
- C#6.0语言规范(八) 语句
C#提供了各种语句.大多数这些语句对于使用C和C ++编程的开发人员来说都很熟悉. statement : labeled_statement | declaration_statement | em ...
- js上传插件uploadify自动检测不到flash控件的问题
[问题描述] 项目开发中,由于使用了js的一个上传插件uploadify,下载的是flash版本的,后来在谷歌浏览器上运行时经常报flash控件未安装,虽然下图是uploadify自动检测自动弹出来的 ...
随机推荐
- redlock分布式锁真的安全吗
此文是对http://zhangtielei.com/posts/blog-redlock-reasoning-part2.html文章的个人归纳,如有问题请联系删除 什么是redlock redlo ...
- python画猫并打包成EXE文件
因python自带有海龟画图库,尝试给爱猫的小仙女来画个猫咪. 1.代码如下 from turtle import * #两个函数用于画心 def curvemove(): for i in rang ...
- php进阶学习-单例设计模式
什么是单例模式(singleton)? 在整个应用程序的生命周期中,任何一个时刻,单例类的实例都只存在一个,同时这个类还必须提供一个访问该类的全局访问点. 单例模式的特点 一个类只有一个实例 私有克隆 ...
- @Transactional自调用问题
- git的使用以及git和码云的连接
什么是git? Git是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理.可以保存许多的历史版本,并且可以多人同时进行开发. 分布式版本控制系统 每个人拥有该项目 ...
- 浅尝 Elastic Stack (五) Logstash + Beats + Kafka
在 Elasticsearch.Kibana.Beats 安装 中讲到推荐架构: 本文基于 Logstash + Beats 读取 Spring Boot 日志 将其改为上述架构 如果没有安装 Kaf ...
- Spring Cloud Alibaba 初体验(三) Nacos 与 Dubbo 集成
一.新建项目 新建项目,只放置接口,用于暴露 Dubbo 服务接口 public interface GreetingService { String greeting(); } 二.provider ...
- 基于 MongoDB 动态字段设计的探索
一.业务需求 假设某学校课程系统,不同专业课程不同 (可以动态增删),但是需要根据专业不同显示该专业学生的各科课程的成绩,如下: 专业 姓名 高等数学 数据结构 计算机 张三 90 85 计算机 李四 ...
- redis分布式锁解决超卖问题
redis事务 redis事务介绍: 1. redis事务可以一次执行多个命令,本质是一组命令的集合. 2.一个事务中的所有命令都会序列化,按顺序串行化的执行而不会被其他命令插入 作用:一个队列 ...
- Python中repr(变量)和str(变量)的返回值有什么区别和联系
Python中repr(变量)和str(变量)都返回一个描述对象的字符串,二者有关联又有不同.由于Python3.0后都是新式类,我们的分析也是基于新式类进行的.基于object派生的新式类中二者之间 ...