javascript语句基础知识学习【javascript高级程序设计】

基本的判断、循环... .. 语句是最基础的东西,前几天晚上参考《javascript高级程序设计》敲了下代码,看了看效果,这样才会对这些基本的东西理解更加深刻!

1、if语句

语法:

//if(condition) statement1 else statement2

示例:

var i=26;
if(i>25){//encodeURIComponent()
	alert(('greater than 25.'));
}else if(i<0){
	alert('less than 0.');
}else{
	alert('between 0 and 25,inclusive');
}
结果:
greater than 25.


2、do-while语句

语法:

/*
do{
	statement
}while(expression)
*/

示例:

var i=0;
do{
	i+=2;
	alert(i);
}while(i<10)
alert(i);
结果:
依次弹出2、4、6、8、10



3、while语句

语法:

//while(expression) statement

示例:

var i=0;
while(i<10){
	i+=2;
}
alert(i);

结果:

10


4、for语句

示例:

/* test 1
var count=10;
for(var i=0;i<count;i++){
	alert(i);
}
*/
var count=10;
var i=0;
for(;i<count;){
	alert(i);
	i++;
}

5、for-in语句

语法:

//js中的迭代
//for(var propName in expression) statement

示例:

//遍历出window对象的所有属性
for(var propName in window){
	document.write(propName);
	document.write('<br/>');
}

结果:
getInterface
window
propName
document
netscape
XPCSafeJSObjectWrapper
XPCNativeWrapper
Components
sessionStorage
globalStorage
getComputedStyle
dispatchEvent
removeEventListener
name
parent
top
dump
getSelection
scrollByLines
scrollbars
scrollX
scrollY
scrollTo
scrollBy
scrollByPages
sizeToContent
setTimeout
setInterval
clearTimeout
clearInterval
setResizable
captureEvents
releaseEvents
routeEvent
enableExternalCapture
disableExternalCapture
open
openDialog
frames
applicationCache
self
navigator
screen
history
content
menubar
toolbar
locationbar
personalbar
statusbar
directories
closed
crypto
pkcs11
controllers
opener
status
defaultStatus
location
innerWidth
innerHeight
outerWidth
outerHeight
screenX
screenY
mozInnerScreenX
mozInnerScreenY
pageXOffset
pageYOffset
scrollMaxX
scrollMaxY
length
fullScreen
alert
confirm
prompt
focus
blur
back
forward
home
stop
print
moveTo
moveBy
resizeTo
resizeBy
scroll
close
updateCommands
find
atob
btoa
frameElement
showModalDialog
postMessage
addEventListener
localStorage

6、label标签

语法:

//label:statement

示例:

start:for(var i=0;i<10;i++ ){
	alert(i);
}

结果:

依次弹出1、2、3、4、5、6、7、8、9

7、continue&break语句

示例:

// break 和 continue语句用于在循环语句中精确控制代码的执行

//test break
/*
var num=0;
for(var i=1;i<10;i++){
	if(i%5==0){
		break;
	}
	num++
}
alert(num);
*/	


//test continue
/*
var num=0;
for(var i=1;i<10;i++){
		if(i%5==0){
			continue;
		}
		num++;
}
alert(num);
*/

//test label&break
/*
var num=0;
outermost:
for(var i=0;i<10;i++){
	for(var j=0;j<10;j++){
		if(i==5&j==5){
			break outermost;
		}
		num++;
	}
}
alert(num);
*/

//test label&continue
var num=0;
outermost:
for(var i=0;i<10;i++){
	for(var j=0;j<10;j++){
		if(i==5&j==5){
			continue outermost;
		}
		num++;
	}
}
alert(num);

7、with语句
/*
with语句
作用:将代码的作用于设定到一个特定的作用域中
with(expression) statement
*/

var qs=location.search.substring(1);
var hostName = location.hostname;
var url = location.href;
document.write(qs);
document.write("<br\>");
document.write(hostName);
document.write("<br\>");
document.write(url);
document.write("<br\>");

document.write(qs+' '+hostName+' '+url);
document.write("<br\>");
with(location){
	var qs=search.substring(1);
	var hostName = hostname;
	var url=href;
	document.write(qs+' '+hostName+' '+url);
}

8、switch语句
/* 
switch(expression){
	case value:statement
		break;
	case value:statement
		break;
	case value:statement
		break;
	case value:statement
	default:statement
}
*/

/*
	如果表达式等于这个value值,则执行后面的语句块
	break作用:语句跳出当前case执行的语句块。如果没有break,那么会在执行完当前case后,继续执行下一个case
	default:此关键字用于表达式不匹配前面任何一种情形的时候,机动执行代码(相当于一个else语句)
	从根本上讲switch语句是为了开发人员免于编写如下面这样的代码
*/

/*
	var i=25;
	if(i==25){
		alert(25);
	}else if(i==35){
		alert(35);
	}else if(45){
		alert(45);
	}else{
		alert('other');
	}
*/

/*
var i=25;
switch(i){
	case 25:
		alert(25);
		break;
	case 35:
		alert(35);
		break;
	case 45:
		alert(45);
		break;
	default:
		alert("other");
}
*/
//每个case后添加一个break语句,可以避免同时执行多个case代码的情况。
//恩格斯:在战争中,尤其是在革命战争中,在没有获得任何决定性的胜利之前,迅速行动是一个基本规则。
/*
var i=55;
switch(i){
	case 25:
		//合并两种情形
	case 35:
		alert('25 or 35');
		break;
	case 45:
		alert(45);
		break;
	default:
		alert("恩格斯:在战争中,尤其是在革命战争中,在没有获得任何决定性的胜利之前,迅速行动是一个基本规则。");
}
*/

/*ECMAScript 中switch语句借鉴其他语言,但这个语句也有自己的特色。
首先,在switch语句中使用任何数据类型(在很多语言中只能使用数值),无论是字符串,还是对象变量都没有问题。
其次,每个case值不一定是常量,可以是变量,甚至是表达式。
*/

/*
switch("hello world"){
	case "hello"+"world":
		alert("greeting was found.");
		break;
	case "goodbye":
		alert('closing was found.');
		break;
	default:
		alert('unexcepted message was found.');
}
*/

//使用表达式做case值
var num=25;
switch(true){
	case num<0:
		alert("less than 0.");
		break;
	case num>=0&&num<=10:
		alert("between 0 and 10.");
		break;
	case num>10 && num<=20:
		alert('between 11 and 20.');
		break;
	default:
		alert("more than 20.");
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值