一、类型转换1、数值类型转换
转换为数值类型的方式有三种:Number()函数、parseInt()函数和parseFloat()函数。
(1)Number函数可以将其它类型都转为数值,布尔值true和false转为1和0,如果是数字类型,返回本身,具体用法实例如下:
var number = 8;
var value_null = null;
var value_undefined = undefined;
var value_str_number = "18";
var value_str_float = "3.14";
var value_str_null = "";
var value_str_other = "spring";
var object = {};
console.log(Number(number));
// 数字类型返回数字本身
console.log(Number(value_null));
// null值返回0
console.log(Number(value_undefined));
// undefined类型返回NaN
console.log(Number(value_str_number));
// 数字字符串返回数字
console.log(Number(value_str_float));
// 浮点数字符串返回浮点数
console.log(Number(value_str_null));
// 空字符串返回0
console.log(Number(value_str_other));
// 其它情况返回NaN
console.log(Number(object));
// 引用类型返回NaN
(2)parseInt()函数将字符串转为整数类型的数值,parseFloat()函数将字符串转为浮点类型的数值,转换忽略前面的空字符,如果不是数字字符那么返回NaN,以0x开头作十六进制处理,例子如下:
var str_int = "1314";
var str_float = "3.14";
console.log(parseInt(str_int));
// => 1314
console.log(parseFloat(str_float));
// => 3.14
2、字符串类型转换
其它类型转换为字符串类型使用String()函数,另外还有toString()方法,同样可以使用+””直接转为字符串,实例如下:
console.log(String(12));
// => "12"
console.log(12+"");
// => "12"
console.log(String(undefined));
// => "undefined"
console.log(String(null));
// => "null"
console.log(String(NaN));
// => "NaN"
var value_number = 123456;
console.log(value_number.toString());
// => "123456"
3、布尔类型转换
其它类型转为布尔类型使用Boolean()函数,其中false,””,0,NaN,null,undefined都会被转为false,其它值都会被转为true,用法如下:
console.log(Boolean(false));
// => false
console.log(Boolean(""));
// => false
console.log(Boolean(0));
// => false
console.log(Boolean(null));
// => false
console.log(Boolean(undefined));
// => false
console.log(Boolean(17));
// => true
console.log(Boolean(1.7));
// => true
console.log(Boolean("spring"));
// => true
4、隐式类型转换
隐式类型转换是自动进行的,当进行类型不匹配的操作JavaScritp引擎会自动强制进行类型转换,例如:
var value_type = "spring01";
var type_01 = +value_type;
// 强制转为字符串类型,输出NaN
var type_02 = !!value_type;
// 强制转为boolean类型,输出true
var type_03 = value_type + 9;
// 进行字符串拼接,输出spring019
console.log(type_01);
console.log(type_02);
console.log(type_03);
二、语句语法详解JavaScript程序主要是由语句组成,掌握各种语句才能更好完成各种业务需求。JavaScript的基本语句有一般表达式语句,如var number是声明语句,如var a = 12,这是常用的赋值语句,另外还有语句块,使用大括号{}括起来,将多条语句组合起来,另外还有函数声明语句,后续讲到函数再进行详细讨论。
1、if-else条件分支语句
If-else条件语句的语法为:
/**
* if条件分支语句的语法格式为:
* if(表达式1){
*语句1;
* }
* else if(表达式2){
*语句2;
* }
* else{
*语句3;
* }
* 表达式1和表达式2的计算结果为boolean类型的值true或false
* 意思是:如果表达式1为true,则执行语句1,
* 否则继续判断表达式2,为真则执行语句2,
* 否则执行语句3
*/
If语句块里面可以嵌套多层if语句,或其它语句,if-else语句的编写实例如下:
var isRead = false;
if(isRead)
console.log("Read");
else
console.log("Not Read");
var cout = 90;
if(cout == 70)
console.log("level 1");
else if(cout == 80)
console.log("level 2");
else
console.log("level 3");
2、while循环语句
While循环语句的语法如下:
/**
* while(表达式1){
*语句1;
* }
* 意思是:当表达式1为真时,循环执行语句1
*/
下面使用while循环计算1+3+5+…+99:
// 1+3+5+...+99
var sum = 0;
var i = 1;
while(i <
100){
if(i % 2 != 0)
sum = sum + i;
i++;
}
console.log(sum);
// => 2500
除了while还有另一形式:do while循环语句,使用较少,语法如下:
/**
* do{
*语句1;
* }
* while(表达式1)
* 意思是:首先执行语句1,再对表达式1进行判断,
* 若为真,则循环执行语句1,否则跳出循环
*/
3、for循环语句
For循环语句在开发中经常使用,它的语法如下:
/**
* for(初始化语句;
判断语句;
循环结束语句){
*语句1;
* }
* 意思是:首先执行初始化语句,例如在for循环内部会用到的变量,仅执行一次
* 然后执行判断语句,若为真则执行for内部的语句1
* 执行完语句1,执行循环结束语句
* 然后再次执行判断语句,依次循环,若判断语句返回false则跳出循环
*/
下面使用for循环语句计算2+4+6+8+…+100:
// 计算2+4+6+...+100
var sum = 0;
for(var i = 1;
i <
= 100;
i++){
if(i % 2 == 0)
sum = sum + i;
}
console.log(sum);
// => 2550
4、continue和break跳转语句
continue和break一般用于处理while或for循环语句,执行continue语句表示跳出本次循环,继续执行下一次循环,而break则是直接跳出循环体,不再执行循环,例如:
var languages = ["javascrpt", "python", "golang", "clang"];
// 输出除clang的其它语言
for(var i = 0;
i <
languages.length;
i++){
if(languages[i] == "clang")
continue;
console.log(languages[i]);
}
console.log("=========");
// 若languages中有python语言则跳出循环体
for(var i = 0;
i <
languages.length;
i++){
if(languages[i] == "python")
break;
console.log(languages[i]);
}
5、switch case条件选择语句
Switch语句是一种多条件选择的语句,语法如下:
/**
* switch(变量1){
*case 值1:
*语句1;
*break;
*
*case 值2:
*语句2;
*break;
*
*default:
*语句3;
* }
* 意思是:根据变量1的值,如果变量1等于值1,则执行语句1,跳出switch语句块
* 若变量1等于值2,执行语句2,跳出switch语句块
* 否则默认执行语句3,跳出switch语句块
* 注意:要使用break跳出,否则会执行完所有的语句才跳出
*/
【JavaScript基础快速入门教程(四)(类型转换和语句语法实例详解)】Switch case语句实例如下:
var day = 1;
var day_str;
switch (day) {
case 1:
day_str = "Sunday";
break;
case 2:
day_str = "Monday";
break;
default:
day_str = "Saturday"
break;
}
console.log(day_str);
推荐阅读
- JavaScript基础快速入门教程(三)(js运算符和实例详解)
- vue.js框架快速入门简明教程(三)(计算属性和属性监听)
- JavaScript基础快速入门教程(二)(js数据类型实例详解)
- JavaScript基础快速入门教程(一)(js介绍和变量详解)
- Vue.js框架快速入门简明教程(二)(条件语句、循环语句和实例分析)
- Vue.js框架快速入门简明教程(一)(模板语法和实例详解)
- curl和浏览器客户端开发调试 – 深入浅出HTTP原理
- HTTP报文、HTTP方法和HTTP响应状态码详细解释 – 深入浅出HTTP原理
- HTTP三次握手四次分手,URI、URL和URN的通俗解析和区别 – 深入浅出HTTP原理