目录

  1. js中的语言结构
  2. If的用法
  3. If-esle的用法
  4. If -else-if结构
  5. Switch-case结构
  6. If-else-if与switch-case的区别
  7. for循环
  8. for…in 循环
  9. 三元表达式
  10. 什么是表达式
  11. While循环
  12. break跟continue
  13. 短路运算

正文

  1. js中的语言结构
  • 顺序结构:页面在执行js代码时,从上到下依次执行
  • 分支结构:if if else
  • 选择结构:代码在执行时出现分叉,需要我们做出选择,然后执行代码if else if switch for()
  • 循环结构 while do-while for()
  1. If的用法

If(判断条件){ 一般是boolean类型的值或是关系表达式或是逻辑表达式
要执行的代码;
}

执行过程:

首先代码运行到if处的小括号处,判断条件是否成立,

如果条件成立,也就是返回true,则进入大括号里面,执行里面的代码,

如果判断条件不成立,也就是返回false,则跳过大括号,执行后面的代码。

If只能判断执行一种情况,如果要判断两种情况,就得用if-else结构

  1. If-esle的用法
if(判断条件){ 一般是boolean类型的值或是关系表达式或是逻辑表达式要执行的代码;}else {要执行的代码}

执行过程:

首先代码运行到if处的小括号处,判断条件是否成立,

如果条件成立,也就是返回true,则进入大括号里面,执行里面的代码,

如果判断条件不成立,也就是返回false,则执行else大括号里面的代码,

执行完毕 跳出当前结构。

  1. If -else-if结构
if(判断条件){ 一般是boolean类型的值或是关系表达式或是逻辑表达式
要执行的代码;
}else if(判断条件){要执行的代码;
}else if(判断条件){要执行的代码;
}else if(判断条件){要执行的代码;
}else {要执行的代码;
}

执行过程:

首先代码运行到if处的小括号处,判断条件是否成立,

如果条件成立,也就是返回true,则进入大括号里面,执行里面的代码,

如果条件不成立,则依次的进行else if小括号里面,判断条件是否成立,

如果成立,也就是返回true,则进入对应的else if里面的大括号,执行里面的代码,

如果所有的条件都不成立,也就是返回false,则要看是否有else,

如果有,则进入else里面,执行代码,

如果没有,则跳出当前结构。

  1. switch-case结构
 Switch(值){   变量的值或是数据值case 值1:
要执行的代码;
break;
case 值2:
要执行的代码;
break;case 值3:
要执行的代码;
break;case 值4:
要执行的代码;
break;
...
default:
要执行的代码;
break;
}

执行过程:

程序执行到swtich处的小括号,先计算里面的值,拿着计算后的定值,依次和case中的值进行匹配,如果匹配成功,则执行此case里面的代码,执行完毕之后,遇到break,则跳出当前结构,如果匹配都不成功,则要看当前结构当中有没有default,如果有的话,则进入到dafault处执行里面的代码,如果没有,则跳出当前结构,执行后面的代码。

  1. If-else-if与switch-case的区别

If-else-if多用于区间的判断

switch-case多用于定值的判断

  1. for循环
for(表达式1;表达式2;表达式3){循环体}

例:计算1~100的和

 // 计算1-100之间所有偶数的和var sum = 0;for(var i=1;i<=100;i++){if(i%2==0){sum += i;}}alert(sum);
  1. for…in 循环

for…in语句以任意顺序遍历一个对象的除Symbol以外的可枚举属性。

语法

For(varizble in object){statement}

variable

在每次迭代时,variable会被赋值为不同的属性名。

object

非Symbol类型的可枚举属性被迭代的对象。

数组迭代和 for…in

提示:for…in不应该用于迭代一个 Array,其中索引顺序很重要。

for … in是为遍历对象属性而构建的,不建议与数组一起使用,数组可以用Array.prototype.forEach()和for … of,那么for … in的到底有什么用呢?

它最常用的地方应该是用于调试,可以更方便的去检查对象属性(通过输出到控制台或其他方式)。尽管对于处理存储数据,数组更实用些,但是你在处理有key-value数据(比如属性用作“键”),需要检查其中的任何键是否为某值的情况时,还是推荐用for … in。

例:

var obj = {a:1, b:2, c:3};for (var prop in obj) {console.log("obj." + prop + " = " + obj[prop]);
}
// Output:
// "obj.a = 1"
// "obj.b = 2"
// "obj.c = 3"
  1. 三元表达式

三元表达式的运算规则,如果第一个表达式成立的话,也就是返回True,则第二个表达式就是整个表达式的值,如果第一个表达式的结果不成立,也就是返回false,则第三个表达式就是整个表达式的值

var result =  str =="学习"?"前端":"后端";console.log(result);
  1. 什么是表达式

凡是有值的式子,都可以看成是一个表达式,比如: “abc”,20,30>50 ,20+50

  1. While循环

所谓的循环就是重复的做同一件事情。

while(循环条件){ 一般是boolean类型的值或是关系表达式或是逻辑表达式循环体(需要重复执行的代码);}

执行过程:

程序运行到while处的小括号处,先判断循环条件是否成立,如果成立,也就是返回true,则进行大括号执行里面的循环体,执行完毕之后,再次回到小括号处,判断循环条件是否成立,如果成立,继续执行里面的代码,如果不成立,则跳出当前循环结构。只要是循环,总有一行码可以改变循环条件,如果没有改变循环条件的代码,这样的循环叫做死循环。

  1. break跟continue

在执行循环时,只要遇到break就直接退出循环
在执行循环时,continue是跳出本次循环,进入下一次循环

  1. 短路运算

逻辑运算符 && ||

如果逻辑运算符两边是boolean类型的时候,进行的是逻辑运算,如果两边不是boolean类型的时候,则进行短路运算。

&& : 找假

&&的两边不是boolean类型的时候,则进行短路运算,找假,也就是说,

如果第一个操作数为false的话,则直接返回第一个操作数,

如果第一个操作数为true的话,则直接返回第二个数,不管第二个数是什么。

在这里会默认做一个隐式转换,将这些值隐式转换为Boolean类型的值

|| 找真

|| 的两边不是boolean类型的时候,则进行短路运算。找零点,也就是说,

如果第一个操作数转换为对应的boolean类型为true的话,则直接返回第一个操作数,

相反,则返回第二个操作数,不管第二个操作数是什么。

JavaScript中的语言结构知识点总结(附实例、图解)相关推荐

  1. javascript中的一些核心知识点以及需要注意的地方

    javascript中的一些核心知识点以及需要注意的地方 原文:javascript中的一些核心知识点以及需要注意的地方 前言 近期杂事甚多,这些事情的积累对知识体系的提升有好处,但是却不能整理出来, ...

  2. java中分支_[Java教程]JavaScript中的分支结构

    [Java教程]JavaScript中的分支结构 0 2016-06-30 23:03:37 说到JavaScript中的分支结构,我们就不得不提到流程控制这个词,我们所有的程序都是由数据和算法组成的 ...

  3. Qt 中使用 VLC-Qt 播放网络视频流(附实例)

    VLC-Qt库:一个在libVLC基础上结合了Qt框架的开源库.它提供了媒体播放的视频.音频处理控制的核心类,并提供基于QWidget和QML的GUI框架.效果图: 官网地址:Quickly crea ...

  4. QML中使用 VLC-Qt 播放网络视频流(附实例)

    VLC-Qt库:一个在libVLC基础上结合了Qt框架的开源库.它提供了媒体播放的视频.音频处理控制的核心类,并提供基于QWidget和QML的GUI框架.QWidget中使用VLC方法见我博文:Qt ...

  5. php js 报错信息,JavaScript中错误异常的分析(附示例)

    本篇文章给大家带来的内容是关于JavaScript中错误异常的分析(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 我的建议是不要隐藏错误,勇敢地抛出来.没有人会因为代码出现 ...

  6. linux中c语言结构体详解,Linux C语言结构体-学习笔记

    Linux C语言结构体简介 前面学习了c语言的基本语法特性,本节进行更深入的学习. 预处理程序. 编译指令: 预处理, 宏定义, 建立自己的数据类型:结构体,联合体,动态数据结构 c语言表达式工具 ...

  7. javascript中的表结构

    列表是一种常见的数据结构,通常列表是一族有徐的数据,列表中的数据项称为元素.在javascript中列表中的数据可以是任意类型的,列表中可以保存多少元素没有事先限定,实际使用时元素的数量只收到程序内内 ...

  8. vuex结合php,vuex中store的使用介绍(附实例)

    本篇文章给大家带来的内容是关于vuex中store的使用介绍(附实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 一.状态管理(vuex)简介 vuex是专为vue.js应用程序 ...

  9. javascript中的链表结构—双向链表

    1.概念 上一个文章里我们已经了解到链表结构,链表的特点是长度不固定,不用担心插入新元素的时候新增位置的问题.插入一个元素的时候,只要找到插入点就可以了,不需要整体移动整个结构. 这里我们了解一下双向 ...

  10. 机器学习面试中常考的知识点,附代码实现(二)

    决策树 什么是决策树1.决策树的基本思想 其实用一下图片能更好的理解LR模型和决策树模型算法的根本区别,我们可以思考一下一个决策问题:是否去相亲,一个女孩的母亲要给这个女海介绍对象. 大家都看得很明白 ...

最新文章

  1. Linux C编程--临时文件
  2. mysql启动warning: World-writable config file
  3. linux中操作数据库的使用命令记录
  4. 此次边路调整系统推荐射手走哪路_王者荣耀地图重大对称改动,终于能射手对射手,上单对上单了...
  5. java 矩阵转置_图解利用Java实现数组转置
  6. STL_算法_区间的比較(equal、mismatch、 lexicographical_compare)
  7. 转→js数组遍历 千万不要使用for...in...
  8. 用pyqt5做一个能python程序能插入图片的ide
  9. 入学年份 mysql_MySQl的学习1___概述
  10. robot光线机器人安卓版_灯光机器人中文版下载-灯光机器人游戏下载v1.6.5 安卓版-2265游戏网...
  11. Stemming词干提取 和 Lemmatization 词形还原
  12. spy——[1220] SPY
  13. 蓝牙linux驱动源代码,基于Linux蓝牙无线模块USB驱动程序开发.pdf
  14. 【精】JAVA各大厂问题汇总-HELLO XF
  15. Error:间接寻址级别不同——C++真的魔鬼
  16. 在线绘制2维/3维函数图像、求导网站
  17. PS旋转复制方法制作
  18. 宜家app android,IKEA宜家家居下载
  19. [UE4]Stat命令
  20. 计算机打开共享网络连接打印机共享打印机,两台电脑如何共享打印机 多台电脑共享一台打印机设置方法【详细教程】...

热门文章

  1. 【图像检测】基于matlab GUI比值+归一化+相关系数遥感图像【含Matlab源码 737期】
  2. aws fargate_使用AWS Fargate部署PyCaret和Streamlit应用程序-无服务器基础架构
  3. 贝叶斯网络 神经网络_随机贝叶斯神经网络
  4. 计算机鼠标不灵活怎么办,鼠标不灵活了怎么办_鼠标突然变迟钝的解决方法
  5. Ubuntu16.04镜像下载
  6. python3.6.5 安装第三方库
  7. mysql text取出乱码_关于delphi2010读取MySQL数据库TEXT类型乱码的解决方案
  8. 安卓分辨率_华为平板M6会不会是最强安卓平板?
  9. python拍3游戏_用Python实现小3传奇小游戏(源代码)
  10. 名字正则只能是中文英文_【R语言新书】1.5 正则表达式