JavaScript入门--数据类型
1、查看变量类型
可以使用typeof方法查看数据类型,typeof后面可以加括号()也可以不加。
var a;
var b = 'hello';
var c = 3;
var d = null;
var e = undefined;
console.log(typeof (a))
注意:null和undefined在判断时值是相等的。
if (null==undefined){
console.log('hello')
}
上述代码会输出hello。
2、布尔型
布尔型数值类型包括true和false,可以使用Boolean()函数将一个变量转换为布尔型。
var a = '', b='hello';
console.log(Boolean(a), Boolean(b))
上述代码的运行结果是false true。
数字0是false,undefined和null是false。
3、数字
数值转换,使用Number()方法可以将数值字符串转换为数字,当然不能转为类似"hello"这样的字符串。
var a='hello', b='2', c='13.14';
console.log(Number(a), Number(b), Number(c))
上述代码的运行结果是NaN 2 13.14。
可以使用parseInt()方法将数字转换为整型。
var a='1', b=3.14;
console.log(parseInt(a), parseInt(b))
上述代码的运行结果是1 3。
可以使用parseFloat()方法转换为浮点型。
var a='1', b=3.14;
console.log(parseFloat(a), parseFloat(b))
上述代码的运行结果是1 3.14。
4、字符串
4.1字符串定义
字符串定义时可以使用单引号、双引号和反引号。
var a = 'hello', b="python", c=`JavaScript`;
console.log(a, b, c)
上述代码的运行结果是hello python JavaScript。
4.2 字符串拼接
以下代码会输出helloworld。
var a = 'hello', b='world'
console.log(a + b)
再来看一个有意思的。下面的代码输出结果分别是15、1020、1520,即数字遇到数字即执行正常的加法,如遇到字符串则进行字符串拼接,然后得到字符串。
var a=10, b=5, c='20', d=30;
console.log(a + b)
console.log(a + c)
console.log(a + b + c)
4.3 格式化字符串
下面的代码可以实现在字符串中引用变量,类似于python中的f-string。注意,要用反引号,大括号前面要加$符号。
var name='xiaoming',
country = 'China';
console.log(`${name} if from ${country}`)
4.4 字符串切片
var s = 'hello, JavaScript'
console.log(s.substr(2,3))
上述代码的意思是切片从下标为2的元素开始,截取3个元素,2是参数from,3是参数length,结果是"llo"。
var s = 'hello, JavaScript'
console.log(s.substring(2,5))
substring的切片和python的切片类似,意思是从下标为2的元素切片到下标为5的元素,不包括下标为5的元素,结果仍然是"llo"。
4.5 字符串其他操作
var s = 'hello, JavaScript'
console.log(s.indexOf('J')) // 打印元素在字符串中的位置,结果是7
console.log(s.indexOf('Java')) // 同上
console.log(s.length) // 打印字符串长度,结果是17
console.log(s.toUpperCase()) // 全部变成大写
console.log(s.toLowerCase()) // 全部变成小写