JavaScript基础快速入门教程(四)(类型转换和语句语法实例详解)

一、类型转换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);

    推荐阅读