2-3. JS 类型转换、不同类型变量的区别、流程控制语句

数字转化成字符串

toString( )

var a=100;
alert(typeof a);  //number
var b=a.toString(); //将数字转换成字符串
alert(typeof b);

toFixed( )

var a=100;
alert(typeof a);  //number
var b=a.toFixed(1); //将数字转换成小数类型的字符串,四舍五入
alert(typeof b);

 

字符串转化成数字

  • Number( )
var str1='100';			/* the output is NaN if the string includes letter(字母) */
alert(Number(str1));	/* result is still 100 but was changed into type of string */
  • parseInt( )
var str1='100ajsklk';			
alert(parseInt(str1));	/* 转化成整数,将字符串中第一个非数字字符之前的所有数字截取出来,所以结果的100 */
  • parseFloat( )
var str1='100.11ajsklk';			
alert(parseFloat(str1));	/* 转化成小数,将字符串中第一个非数字字符之前的所有数字截取出来,所以结果的100.11 */

 

对于基本类型的数据 比较运算符(==)比较的是值,而对象比较的是引用

先举下面例子作为说明铺垫:

var a=100;
var b=a;
a=10;
alert(a); /* 10*/
alert(b); /* 100*/
var obj2=obj1; /* 对象赋值给其他变量的时候其实是引用,相当于给这边变量起了一个别名*/
obj1.info="I am Robin";
obj1.name="Mike";
alert(obj2.name); /* Mike*/
/* JS中数组是对象,但php中数组就是数组不是对象 */
var arr1=[10,100,100];
var arr2=arr1;	/* 相当于起了一个别名 */
arr1[3]="ROBIN";
alert(arr2)

再理解上面那句话:

/* 对象比较 */
/* var a=100;
var b=100;
alert(a==b); */

var obj1={name:"ROBIN"};
var obj2={name:"ROBIN"};
var obj3=obj1;
alert(obj1==obj2);	/* false, JS中对象比较的时候比较的是引用 */
alert(obj1==obj3);	/* true */

 

流程控制语句

/* for语句 */
var arr1=["ROBIN","MIKE","JACK"];
for(var i=0;i<arr1.length;i++){		/* 遍历数组 */
	alert(arr1[i]);	
}
/* while语句 */
var a=10;
while(a>0){
	alert(a);
	a--;
}
/* break;的作用是跳出循环语句或者switch语句 */
var a=10;
while(a>0){
	if(a==8){
		break;
	}
	alert(a);
	a--;
}
 
/* 循环语句内可以放if语句,if语句内可以放循环语句,只要
 * 只要语句的语法正确都可以相互嵌套
 */
 
for(var i=0;i<10;i++){
	if(i==1){
		break;
	}
	alert(i);
}
/* continue语句
 * 用于循环语句,作用:跳出本次循环
 */
for(var i=0;i<10;i++){
	if(i==1){
		continue; /* 跳出这一次循环 */
	}
	alert(i); /* 不会输出1*/
}
 
for(var i=0;i<10;i++){
	if((i==1)||(i=3)){
		continue; /* 跳出这一次循环 */
	}
	alert(i); /* 不会输出1、3*/
}
/* switch语句*/
var a=1;
switch(a){
	case 1:
		alert("一");
		break;
	case 2:
		alert("二");
		break;
	case 3:
		alert("三");	
		break;
	default:  /* default分支可有可无*/
		alert("没有执行任何一个case分支语句");
}
var a=50;
if(a==100){
	alert("很厉害啊,得了满分");
}
else if(a>=85){
	alert("优秀");
}
else if(a>=60){
	alert("通过");
}
esle{
	alert("没通过");
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值