JS

数据类型检测:
JavaScript中对于数据类型的检测提供了以下两种方式:
1.typeof操作符
2.Object prototype toString cal()

数据类型转换:
1.转布尔型
var con=prompt(); //保存用户的输出内容
if(Boolean (con) ){
document.write(‘已输入内容’);
}else{
document.write('无输入内容) ;
}
console.1og (Boolean(con)); //用户单击“取消”按钮,则结果为false
console.1og (Boolean(con));//用户未输入,单击“确定”按钮,则结果为false
console.log (Boolean(con)); //用户输入“哈哈”,单击“确定”按钮,则结果为true

2.转数值型
//获取用户的输入,完成自动求和
var numl = prompt(’ 请输入求和的第1个数据: ); //假设当前用户输入: 123abc
var num2 = prompt('请输入求和的第2个数据: '); //1假设当前用户输入: 456
//未处理,直接进行相加运算
console. log (num1 + num2) ; //输出结果: 123abc456
console. log (parseInt (num1) + parseInt (num2)); //输出结果: 579

所有函数在转化纯数字时会忽略前导零,如“0123”字符串会被转化为123。parseFloat()函数会将数据转化为浮点数(可以理解为小数);perselnt()函数会直接省略小数部分。返回数据的整数部分,并可通过第2个参数设计转化的进制数。
console.log (parseInt(‘123abc’)) ; //输出结果: 123
console.log (parseInt(‘F’,16)) ; //输出结果: 15

上述自动求和示例的实现并不严谨。在实际开发中还需要对转换后的结果是否是NaN进行判断,只有不是NaN时,才能够进行运算。
此时可以利用JavaScript提供的is NaN()函数来确定,当给定值为undefined,NaN和(){对象}时返回true,否则返回false。
//获取用户的输入,完成自动求和
var num1=prompt('请输入求和的第1个数据: '); //假设当前用户输入: abc
var num2=prompt('请输入求和的第2个数据: '); //假设当前用户输入: 123
var num1 =parseInt(num1),num2二parseInt (num2); // 转数值型
if(isNaN (num1) || isNaN (num2)) { //判断是否是NaN
console.1og(‘非法数字’);
} else {
console.log (num1 + num2) ;
}

在开发中,需要将数据转化成字符型时,可以利用JavaScript提供的string()函数和to string()方法进行转换,它们的区别是前者可以将任意类型转换为字符型;而后者除了null和undefined没有to string()方法外,其他数据类型都可以完成字符的转换。
var num1 = num2 = num3 = 4, num4=26;
console.log(String(12)); //输出结果: 12
console.log(numl + num2 + num3. toString()); //输出结果: 84
console.log (num4. toString(2)); //输出结果: 11010
tostring()方法在进行数据类型转换时,可通过参数设置,将数值转化为指定进制的字符串。

表达式:
表达式可以是各种类型的数据变量和运算符的集合。其中,最简单的表达式可以是一个变量。
var x,y, z; //声明变量
x=1 ; //将表达式“1”的值赋给变量x
y=2+3; //将表达式“2 + 3.”的值赋给变量y
z=y= x; //1将表达式“y = x”的值赋给变量z
console.log (z) ; //将表达式“z”的值作为参数传给console. log()方法
console.log(x+y); //:将表达式“x:+ y”的值作为参数传给console. log()方法

运算符:
1.算术运算符
(1)进行四则混合运算时,运算顺序要遵循数学中‘先乘除后加减’的原则。
(2)在进行取模运算时,运算结果的正负取决于被模数(%左边的数)的符号,与模数(%右边的数)的符号无关。
(3)在开发中尽量避免利用小数进行运算,有时可能因JavaScript的精度导致结果的偏差。
(4)+和-在算数运算时还可以表示正数或负数。
(5)预算符(++货–)放在操作数前面时,先进行自增或自减运算,再进行其他运算。如果运算符放在操作数后面时,则先进行其他运算,再进行资金或自减运算。
(6)递增和递减运算符仅对数值型和布尔型数据操作,操作时会将布尔值true当做1,false当作0。
2.字符串运算符
JavaScript中,“+”操作的两个数据中只要有一个是字符型,则“+”就表示字符串运算符,用于返回两个数据拼接后的字符串。利用好字符串运算符“+”的特性,可以将布尔型、整型、浮点型或为null的数据,御空字符串进行拼接,就会完成字符型的自动转换。
3.赋值运算符
4.比较运算符
(1)不相同类型的数据进行比较时,首先会自动将其转换成相同类型的数据后再进行比较。
(2)运算符“” 和 “!=”与运算符 “=” 和 “!==” 在进行比较时,前两个运算符只比较数据的值是否相等,而后两个运算符不仅要比较值是否相等,还要比较数据的类型是否相等。
5.逻辑运算符
逻辑运算符在使用时是从左到右的顺序进行求值。
(1)当使用“&&”连接两个表达式时,如果左边表达式的值为false,则右边的表达式不会执行,逻辑运算结果为false。
(2)当使用“||”连接两个表达式时,如果左边表达式的值为true,则右边的表达式不会执行,逻辑运算结果为true。
6.三元运算符
条件表达式?表达式1:表达式2
先求条件表达式的值,如果为true,则返回表达式1的执行结果;如果条件表达式的值为false,则返回表达式2的执行结果。
7.位运算符
JavaScript中位运算符仅能对数值型的数据进行运算。在对数字进行位运算之前,程序会将所有的操作。数转换成二进制数,然后再逐位运算。
(1)“&”是将参与运算的两个二进制数进行“与”运算,如果二进制位上有一个值是1,则该位的运算结果为1,否则为0。
(2)“|”是将参与运算的两个二进制数进行“或”运算。如果二进制位上有一个值是1,则该位的运算结果为1,否则为0。
(3)“^”将参与运算的两个二进制数进行“异或”运算,如果二进制位相同,则为0,否则为1。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值