1. 条件判断语句

若条件成立才会执行,条件不成立则语句不执行;

if语句

  语法一:

    if(条件表达式)

      {语句}          :true就执行,false不执行;

  语法二:

    if(条件表达式)

      {语句}

    else  {语句}

  语法三:

     if(条件表达式)

      {语句}

    else  if (条件表达式) {语句}

    else  if (条件表达式) {语句}

    else{语句}

2. 条件分支语句:switch语句

语法:

  switch(条件表达式1){

    case 表达式2

      语句......

      break;

    case 表达式:

      语句......

      break;

    default:

      语句......

      break;}

执行流程:在执行时会一次将case后的表达式2的值和switch后的条件表达式1的值进行全等比较,如果比较结果为true,则执行语句;若比较结果为false,则接着下去执行。若所有比较结果是false,则只执行default后的语句。

3. 循环语句

通过循环语句可以反复的执行一段代码多次

  while循环:

    语法:while(条件表示式){

          语句.....

          break;}

执行过程:先对条件表达式进行求值判断,如果值为true,则执行循环体,执行完毕以后,继续对表达式进行判断,如果值为true,则执行循环体,以此类推。若值为false,终止循环。

向这种将条件表达式写死为true的循环,叫做死循环,慎用

  var n=1;

  while(true){

    alert(n++);

    if ( n==10){

    break;}}

创建一个循环,需要三个步骤:

  1. 创建初始化一个变量:var a=0;
  2. 在循环中设置一个条件表达式:while(i<10)
  3. 定义一个更新表达式,每次更新初始化变量:i++

    var n=1;

    while(n<11){

      document.write(n++ +'<br/>');}

do...while循环:

  语法: do{  语句....  }

    While{ 条件表达式 }

      var n=1;

      do{document.write(n++ +'<br/>');}

      while(n<11);

执行流程:do...while语句在执行时,会先执行循环体,循环体执行完毕之后,在对while后的条件表达式进行判断。

4.for循环

在for循环中,提供了专门位置用来放置三个表达式:

  1. 初始化表达式
  2. 条件表达式
  3. 更新表达式

  语法:for ( 初始化表达式;条件表达式;更新表达式 ){ 语句  }

执行流程:执行初始化表达式,初始化变量;(只执行一次)

  执行条件表达式,判断是否执行循环;若为true,则执行语句,若为false,终止循环。

  执行更新表达式,更新表达式执行完毕继续重复2。

注意:for循环中的三个部分都可以省略,也可以写在外部

若在for循环中不写任何的表达式,只写两个;此时循环是一个死循环,慎用

5.嵌套循环

for(var i=0;i<5;i++){

    for(var j=0;j<5;j++){

    document.write('*');}

  document.write('<br/>');}

形成如下图案:

*           ***

**          **

***         *

图案一:for(var i=0;i<5;i++){

for(var j=0;j<i+1;j++){

document.write('*');}

document.write('<br/>');}

图案二:for(var i=0;i<5;i++){

for(var j=0;j<5-i;j++){

document.write('*');}

document.write('<br/>');}

9x9乘法表:

for(var i=0;i<10;i++){

for(var j=0;j<i+1;j++){

num=i*j;

document.write(i+'*'+j+'='+num+' '+' '+' ');

}document.write('<br/>');

}

6. break , continue

break关键字可以用于退出switch或循环语句,会立即终止离他最近的循环语句

for(var i=3;i<8;i++){

console.log(i);

break;         //不会执行下去

}

 注意:不能在if语句中使用break和continue

label:使用break语句时,可以在break后跟着一个label,这样break就会结束指定的循环,而不是最近。

outer:

for(var i=0;i<8;i++){

for(var j=0;j<8;j++)

{console.log('内部'+j);

break outer;}

console.log('外部'+i);}

Continue:关键字可以跳过当次循环

for(var i=0;i<7;i++){

if(i==2){continue;}

console.log(i);}

7. 测试程序性能

在程序执行前,开启计时器,console.time( ‘计时器的名字’)可以用来开启一个计时器。

停止计时器:console.timeEnd( ‘计时器的名字’)

8. 通过Math.sqrt( ):对一个数进行开方

求质数的最完美方法:

console.time('test');
for(var i=2;i<=10000;i++){
   var flag=true;
   for(var j=2;j<Math.sqrt(i);j++){
      if(i%j==0){
         flag=false;
         break;}
   }
   if(flag){
      console.log(i);}

}
console.timeEnd('test');

JavaScript基础-03的更多相关文章

  1. javascript基础03

    javascript基础03 1. 算术运算符 后增量/后减量运算符 ++ ,-- 比较运算符 ( >, <, >=, <=, ==, !=,===,!== ) 逻辑运算符( ...

  2. javaScript基础-03 javascript语句

    一. 声明语句 var和function都是声明语句.声明或定义变量或函数. var 声明一个或者多个变量.语法如下: var a ; var b = 1; var c, d; var e = 3; ...

  3. JavaScript基础03——函数的作用域及变量提升

    1.作用域 作用域,变量在函数内部作用的范围/区域.有函数的地方就有作用域.   2.局部作用域和全局作用域 function fn(){ var a = 1; } console.log(a); / ...

  4. JavaScript基础第03天笔记

    JavaScript基础第03天笔记 1 - 循环 1.1 for循环 语法结构 for(初始化变量; 条件表达式; 操作表达式 ){ //循环体 } 名称 作用 初始化变量 通常被用于初始化一个计数 ...

  5. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  6. 第三篇:web之前端之JavaScript基础

    前端之JavaScript基础   前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript ...

  7. JavaScript 基础学习1-day14

    JavaScript 基础学习1 知识预览JavaScript概述二 JavaScript的基础三 JavaScript的对象BOM对象DOM对象实例练习js扩展 JavaScript概述 JavaS ...

  8. JavaScript基础视频教程总结(071-080章)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  9. JavaScript基础入门06

    目录 JavaScript 基础入门06 Math 对象 Math对象的静态属性 Math对象的静态方法 指定范围的随机数 返回随机字符 三角函数 Date对象 基础知识 日期对象具体API 构造函数 ...

随机推荐

  1. 【JVM之内存与垃圾回收篇】JVM与Java体系结构

    JVM与Java体系结构 前言 作为Java工程师的你曾被伤害过吗?你是否也遇到过这些问题? 运行着的线上系统突然卡死,系统无法访问,甚至直接OOMM! 想解决线上JVM GC问题,但却无从下手. 新 ...

  2. 浅谈服务治理、微服务与Service Mesh(三) Service Mesh与Serverless

    作为本系列文章的第三篇(前两篇<浅谈服务治理.微服务与Service Mesh(一)Dubbo的前世今生>,<浅谈服务治理.微服务与Service Mesh(二) Spring Cl ...

  3. 【博弈论】Road to Arabella Gym - 102263B

    题目: 题目大意:输入n,k.两个人轮流选一个数x(1<=x<=max(1,n-k))减去n,若到一个人的回合n=0那么那个人失败.Kilani先手. 通过手动模拟几个实例,很容易发现先手 ...

  4. hibearnate的一级缓存和二级缓存的功能

    首先要明白缓存是干什么的,缓存就是要将一些经常使用的数据缓存到内存或者各种储存介质中,当再次使用时可以不用去数据库中查询,减少与数据库的交互,提高性能.再说明一级与二级缓存的作用:一级缓存是Sessi ...

  5. 玩LOL间歇性卡顿(FPS突然降低又马上恢复)?Windows10间歇性卡顿?

    一..问题描述: LOL时:画面突然死掉,不能操作:FPS突然降低,从三位数降到两位数(150 -> 6).我最开始就是从LOL这里观测到的,因为游戏是卡顿最直观.最明显的表现.之后才发现不玩游 ...

  6. Flask框架(一):介绍与环境搭建

    1.Flask介绍 Flask诞生于2010年,是Armin ronacher(人名)用 Python 语言基于 Werkzeug 工具箱编写的轻量级Web开发框架. Flask 本身相当于一个内核, ...

  7. 【laravel】用户认证之----手动认证用户

    模型 如果某个模型类需要用于认证,必须继承自 Illuminate\Foundation\Auth\User 基类,否则会报错.然后在这个模型类中使用 Notifiable Trait,里面提供了用户 ...

  8. LQB2018A09倍数问题

    这个题,第一反应一定是三个for嵌套加一个max比较. 超级无敌大暴搜 #include <iostream> #include <string> #include <s ...

  9. Seaborn实现多变量分析

    import seaborn as sns import numpy as np import pandas as pd import matplotlib.pyplot as plt sns.set ...

  10. PHP pclose() 函数

    定义和用法 pclose() 函数关闭由 popen() 打开的进程. 如果失败,该函数返回 FALSE. 语法 pclose(pipe) 参数 描述 pipe 必需.规定由 popen() 打开的进 ...