JavaScript基础-03
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;}}
创建一个循环,需要三个步骤:
- 创建初始化一个变量:var a=0;
- 在循环中设置一个条件表达式:while(i<10)
- 定义一个更新表达式,每次更新初始化变量: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循环中,提供了专门位置用来放置三个表达式:
- 初始化表达式
- 条件表达式
- 更新表达式
语法: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的更多相关文章
- javascript基础03
javascript基础03 1. 算术运算符 后增量/后减量运算符 ++ ,-- 比较运算符 ( >, <, >=, <=, ==, !=,===,!== ) 逻辑运算符( ...
- javaScript基础-03 javascript语句
一. 声明语句 var和function都是声明语句.声明或定义变量或函数. var 声明一个或者多个变量.语法如下: var a ; var b = 1; var c, d; var e = 3; ...
- JavaScript基础03——函数的作用域及变量提升
1.作用域 作用域,变量在函数内部作用的范围/区域.有函数的地方就有作用域. 2.局部作用域和全局作用域 function fn(){ var a = 1; } console.log(a); / ...
- JavaScript基础第03天笔记
JavaScript基础第03天笔记 1 - 循环 1.1 for循环 语法结构 for(初始化变量; 条件表达式; 操作表达式 ){ //循环体 } 名称 作用 初始化变量 通常被用于初始化一个计数 ...
- 前端之JavaScript基础
前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...
- 第三篇:web之前端之JavaScript基础
前端之JavaScript基础 前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript ...
- JavaScript 基础学习1-day14
JavaScript 基础学习1 知识预览JavaScript概述二 JavaScript的基础三 JavaScript的对象BOM对象DOM对象实例练习js扩展 JavaScript概述 JavaS ...
- JavaScript基础视频教程总结(071-080章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- JavaScript基础入门06
目录 JavaScript 基础入门06 Math 对象 Math对象的静态属性 Math对象的静态方法 指定范围的随机数 返回随机字符 三角函数 Date对象 基础知识 日期对象具体API 构造函数 ...
随机推荐
- Python Ethical Hacking - BACKDOORS(6)
File Upload: A file is a series of characters. Uploading a file is the opposite of downloading a fil ...
- 资深CIO介绍如何选型OA系统的?
OA办公系统成为企业管理的标配软件,在于可有效加强组织管理能力,提高员工协同效率,助力企业科学决策,合理分配企业资源,提升企业综合实力与市场竞争力.企业OA选型的经验总结来说也就是品牌.技术.产品.服 ...
- p71_文件传送协议FTP
一.FTP服务器和用户端 FTP是基于客户/服务器(C/S) 的协议. 用户通过一一个客户机程序连接至在远程计算机上运行的服务器程序. 依照FTP协议提供服务,进行文件传送的计算机就是FTP服务器. ...
- matplotlib常见图表绘制——极坐标图-雷达图、极轴图
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:斑点鱼 极坐标轴 调用subplot()创建子图时通过设置proje ...
- HttpServletRequest、HttpServletResponse
doGet()/doPost()方法都有两个参数,一个为代表请求的request,另一个代表响应response. request是获取前台传递的内容,response是反馈给前台数据 HttpSer ...
- Django学习路31_使用 locals 简化 context 写法,点击班级显示该班学生信息
urls 中 进行注册 url(r'grades',views.grades) views 中编写函数 def grades(request): grades_list = Grade.objects ...
- PHP curl_unescape函数
(PHP 5 >= 5.5.0) curl_unescape — 解码经过URL编码的字符串. 说明 string curl_unescape ( resource $ch , string $ ...
- PHP chr() 函数
实例 从不同 ASCII 值返回字符: <?php高佣联盟 www.cgewang.comecho chr(52) . "<br>"; // Decimal va ...
- ajax模拟表单提交,后台使用npoi实现导入操作 方式二
页面代码: <form id="form1" enctype="multipart/form-data"> <div style=" ...
- 数据量大了一定要分表,分库分表组件Sharding-JDBC入门与项目实战
最近项目中不少表的数据量越来越大,并且导致了一些数据库的性能问题.因此想借助一些分库分表的中间件,实现自动化分库分表实现.调研下来,发现Sharding-JDBC目前成熟度最高并且应用最广的Java分 ...