JS的循环、复杂运算符
一.循环语句
特点:可以重复完成同样的事情
1.while(条件语句/boolean){
重复执行的代码块
}
while的两种写法
var a= prompt("请输入第一个数");
var b= prompt("请输入第二个数");
var i =a>b ?a:b; //三目运算法
// while(i%a!==0 ||i%b!==0){
// i++;
// }
while(true){
if(i%a!==0 && i%b!==0){
break;
}
else{
i++;
}
}
console.log(a+'和'+b+"的最小公倍数数"+i);
注意:循环要有结束,不然就是bug
//练习一:1+2+3...+99+100;
var a =1;
var b =0;
while(a<=100){
b = a + b;
a++;
}
alert(b);
//练习二: 登录用户名和密码
var a = prompt("请输入用户名");
var b = prompt("请输入密码");
while(a!="1"||b!="0"){
alert("用户名或密码有误");
a = prompt("请输入用户名");
b = prompt("请输入密码");
}
alert("登录成功");
//练习三:1+2-3+4-5+...-97+98-99+100
var i =2;
var b =1;
var he=1;
while(i<=100){
he=he+b*i;
i++;
b=-b;
}
alert(he);
2.终止循环break: 终止整个while语句
//while里用if else时用break终止循环
var a = prompt("请输入用户名");
var b = prompt("请输入密码");
while (true){
if(a=="1" && b=="0"){
alert("登录成功");
break;
}
else{
alert("用户名或密码有误");
a = prompt("请输入用户名");
b = prompt("请输入密码");
}
}
3.continue:立即结束本次循环,开始下一次循环
var i=1;
while(i<=5){
if(i===3){
i++;
continue;}
console.log(i);
i++;
}
4.do while:
与while是一样的,唯一的区别:while先判断再做;do while是现做再判断
do{
//要循环执行的代码块}
while(条件语句/boolean)
执行过程:
代码从上到下执行的过程中,遇到do就会先执行一次do后面的代码,再通过while来进行判断,如果判断通过那么在执行一次,如果没有通过,就立即结束循环
do{
var a = prompt("请输入用户名");
var b = prompt("请输入密码");
}
while(a!="1" || b!="0")
alert("登录成功")
5.for循环:
作用:用来执行循环
代码:for(var i =0;boolean表达式;i++){}
当代码从上到下执行到for的时候,代码会先声明变量i并赋值i,会进行判断var i = 1分号后面的判断,判断i是否小于等于100,执行下面的循环代码,当下面的代码执行完成之后,再回来执行i++.
var he = 0;
for (var i = 1; i <= 100; i++) {
he = he + i;
}
alert(he)
13的阶层:从1乘到13
水仙花数=百位上的数的立方+十位数的立方+个位数的立方
求质数:两个变量 --双重变量
二.复杂的数据类型:
总结:在JS中数据类型分为两大类:
简单数据类型:string,number,boolean,undefined
复杂数据类型:Null,Array,object,function
堆和栈都是电脑内存,一般情况下,简单数据类型是存储在栈里面,复杂的数据类型是存储在堆里面的
简单数据类型对应的是值类型
复杂数据类型对应的是引用类型
1. object对象;
创建对象:var a = Object();
a.xm = "zhao";
a.chengji =99;
对象属性的添加:点:官方名叫属性
2.数组Array
数组的创建:var a = Array();
var a = Array();
a[0] = 81;//中括号里的数字叫下标
a[1] = 82;
a[3] = 92;
alert(a[1]); // 数组取值
alert(a.length);//输出3
注意点:
a)js数组是个无限大的容器;在java里面数组可以定义长度。
b)元素可以任意添加:数量不限制,数据类型不限制(弱语言)。
c)元素下标是0开始
数组的length属性:指数组的长度。
数组的便利:可以一次性输出所有数组
for(var i=0;i<a.length;i++){
console.log(a[i]); //输出a的所有数组
}
字符串也可以看成是一个数组
var a ="abc";// 可以看成由a元素,b元素,c元素组成的数组
3.函数founction:
定义:
作用:用来封装一些经常要用到的代码
结构:function 函数名(){}
调用:函数()
function a(形参){
console.log("我要吃火锅");
console.log("我还要吃冰淇淋");
}
a(实参);
a();
a();//浏览器出现3次
当创建函数的时候,函数名后面的参数叫做形参(形式参数)
当调用函数的时候,函数名后面的参数叫做实参(实际参数)
函数的返回值:
跟在return后面的数据,叫做函数的返回值。
一般情况下如果没有return,那么这个函数默认返回undefined
JS的循环、复杂运算符的更多相关文章
- js中的等值运算符(抽象相等==与严格相等===的区别)
js中的等值运算符 js中的相等分为抽象相等和严格相等,他们有什么区别呢. 在说具体算法前,先提下JS数据类型,JS数据类型分为6类:Undefined Null String Number Bool ...
- [C语言入门笔记]循环与运算符
循环与运算符 什么是循环? 循环就是一个不停工作的东西,可以反复的实现一个功能,这个才是计算机的重点.计算机可以重复的做一件事情,这样子可以省很多事情 循环的种类有哪些? While Do while ...
- Node.js 事件循环(Event Loop)介绍
Node.js 事件循环(Event Loop)介绍 JavaScript是一种单线程运行但又绝不会阻塞的语言,其实现非阻塞的关键是“事件循环”和“回调机制”.Node.js在JavaScript的基 ...
- Node.js事件循环
Node JS是单线程应用程序,但它通过事件和回调概念,支持并发. 由于Node JS每一个API是异步的,作为一个单独的线程,它使用异步函数调用,以保持并发性.Node JS使用观察者模式.Node ...
- JS基础——循环很重要
介绍循环之前,首先要说一下同样很重要的if-else结构,switch-case结构 ①if-else结构 if(判断条件) { 条件为true时执行 } else{ 条件为false时执行 } ②i ...
- 【JS中循环嵌套常见的六大经典例题+六大图形题,你知道哪几个?】
首先,了解一下循环嵌套的特点:外层循环转一次,内层循环转一圈. 在上一篇随笔中详细介绍了JS中的分支结构和循环结构,我们来简单的回顾一下For循环结构: 1.for循环有三个表达式,分别为: ①定义循 ...
- js事件循环机制辨析
对于新接触js语言的人来说,最令人困惑的大概就是事件循环机制了.最开始这也困惑了我好久,花了我几个月时间通过书本,打代码,查阅资料不停地渐进地理解他.接下来我想要和大家分享一下,虽然可能有些许错误的 ...
- js 各种循环遍历
js 各种循环遍历(表格比较) 遍历方法 能否遍历数组 能否遍历对象 备注 for 能 不能 for in 能(有诸多缺点) 能 为遍历对象而设计的,不适用于遍历数组 forEach 能 不能 bre ...
- 6、Node.js 事件循环
#########################################################################################Node.js 事件循 ...
- js经典试题之运算符的优先级
js经典试题之运算符 1.假设val已经声明,可定义为任何值.则下面js代码有可能输出的结果为: console.log('Value is ' + (val != '0') ? 'define' : ...
随机推荐
- ADF_Starting系列8_使用EJB/JPA/JSF通过ADF构建Web应用程序之扩展UI Method
2013-05-01 Created By BaoXinjian
- JAVA设计模式之门面模式
在阎宏博士的<JAVA与模式>一书中开头是这样描述门面(Facade)模式的: 门面模式是对象的结构模式,外部与一个子系统的通信必须通过一个统一的门面对象进行.门面模式提供一个高层次的接口 ...
- Android.mk的用法和基础【转】
一个Android.mk file用来向编译系统描述你的源代码.具体来说:该文件是GNU Makefile的一小部分,会被编译系统解析一次或多次.你可以在每一个Android.mk file中定义一个 ...
- Bootstrap 4 中 Alerts 实现
Alert 的使用说明 http://v4-alpha.getbootstrap.com/components/alerts/ JavaScript behavior Triggers Enable ...
- 【caffe-windows】 caffe-master 之 matlab接口配置
平台环境: win10 64位 caffe-master vs2013 Matlab2016a 第一步: 打开\caffe-master\windows下的CommonSettings.props文 ...
- IQ推理:红眼睛和蓝眼睛
题目: 有一个很古老的村子,这个村子的人分两种,红眼睛和蓝眼睛,这两种人并没有什么不同,小孩在没生出来之前,没人知道他是什么颜色的眼睛,这个村子中间有一个广 场,是村民们聚集的地方,现在这个村子只有 ...
- 双击vbs时,默认cscript运行脚本
Dim obj_shellset obj_shell = createobject("wscript.shell")host = WScript.FullNameIf LCase( ...
- iOS 关于僵尸对象和僵尸指针的那些事儿
引言 提到僵尸就感到一种恐怖,大家都知道“僵尸”是没有生命的,但是它确实是一种存在的类似生命体的一种生物.哈哈,当然本文的重点不是讨论“僵尸”,而是有关于ios当中经常遇到的僵尸指针(Zombie P ...
- GPUImage相关(转)
3.滤镜 除了上面提到的美颜和水印之外,视频中还有很多其它的处理效果也在这个环节完成.七牛直播云提供的 SDK 在开放性设计基础之上,通过数据源回调接口,可以支持各种自定义滤镜的接入. 为了实现丰富的 ...
- SSO(单点登录)
自己动手写SSO(单点登录) 标签: sso 登录 | 发表时间:2014-03-02 15:01 | 作者: 分享到: 出处:http://www.iteye.com SSO在我们的应用中非常常见, ...