JavaScript数据类型和类型转换

1、JavaScript数据类型

1.1字符串

1、正常字符串使用单引号或双引号包裹

2、转义字符\

\`
\n
\t
\u4e2d 	\u#### Unicode字符
\x41		Ascll字符

3、多行字符串编写

//esc键下面`
var jj = `
	hello
	hi
`

4、模板字符串

let name = "liuliu";
let age = 3;
ley jj = `哈喽啊,${name}`

5、字符串长度

str.length

6、字符串的可变性,不可变

7、大小写转换

//
student.toUpperCase()
student.toLowerCase()

8、student.indexOf(‘t’)

9、substring

[)
student.substring(1)//从第一个字符串截取到最后一个字符串
student.substring(1,3)//[1,3)
1.2数组

Array可以包含任意数据类型

var arr = [1,2,3,4,5,6]//通过下标取值和赋值
arr[0]	//==>1

1、长度

arr.length

注意假如给arr.length赋值,数组大小就会发生变化,如果赋值过小,元素就会丢失

2、indexOf,通过元素获取下标索引

arr.indexOf(2)
1

字符串"1"和数字1是不同的

**3、slice()**截取Array的一部分,返回一个新数组,类似于String中的substring

4、push(),pop() 尾部

push:压倒尾部

pop:弹出一个尾部元素

5、unshift(),shift() 头部

6、排序sort()

(3) ["B","A","C"]
arr.sort()
(3) ["A","B","C"]

7、元素反转reverse

(3) ["A","B","C"]
arr.reverse()
(3) ["C","B","A"]

8、concat()

(3) ["A","B","C"]
arr.concat([1,2,3])
(6) ["A","B","C",1,2,3]
arr
(3) ["A","B","C"]

注意:concat()没有修改数组,只是会返回一个新的数组

9、连接符join

打印拼接数组,使用特定的字符串连接

(3) ["A","B","C"]
arr.join('-')
"A-B-C"

10、多维数组

arr = [[1,2],[3,4],["5","6"]];
arr[1][1]//==>4

数组:存储数据

1.3对象

若干个键值对

var 对象名 ={
	属性名:属性值;
	属性名:属性值;
	属性名:属性值;
}
var a = {
    name:"xiaomin",
    age:18,
    phone:18888881888
}

js中对象,{…}表示一个对象,键值对描述属性,多个属性间用逗号分隔

JavaScript中的所有的键都是字符串,值是对象

1、对象赋值

a.name = "xiaomin"
"xiaomin"
a.name
"xiaomin"

2、使用一个不存在的对象不会报错 undefined

a.xixi

undefined

3、动态的删减属性,通过delete删除属性

delete a.name
true
a

4、动态的添加,直接给新的属性添加值即可

a.xixi = "xixi"
"xixi"
a

5、判断属性值是否在这个对象中 xxx in xxx

'age' in a
true
//继承
'toString' in a
true

6、判断一个属性是否是这个对象自身拥有的 hasOwnPropert()

a.hasOwnPropert('toString')
false
a.hasOwnPropert('age')
true

JavaScript权威指南3.8

2、JavaScript类型转换

1、typeof()方法
//typeof()获取变量数据类型
		var num = 10;
		console.log(typeof num);//==>Number
		var str = "sj";
		console.log(typeof str)//==>String
		var boo = true;
		console.log(typeof boo);//==>boolean
		var u = undefined;
		console.log(typeof u);//==>undefined
		var n =null;
		console.log(typeof n);//==>object
2、变量.toString

数字类型转换为字符串

	var num = 10;
	var str =num.toString();
	console.log(str);
	console.log(typeof str);
3、string(变量)
console.log(String(num));

注意:toString()和String使用方法不一样

4、隐式转换
//	+ 拼接字符串方法实现转换效果	隐式转换
//	和字符串拼接出来的都是字符串
		console.log(num + '');

5、parseInt()

可以把一个字符串转换为数字,得到是一个整数

console.log(parseInt("3.1415"));//==>3取整
		console.log(parseInt("3.333333"));//==>3
		console.log(parseInt("30fm"));//==>30	会去掉后面的字母
		console.log(parseInt("cc30fm"));//==>NaN	字符型!
6、parseFloat()

把一个字符串转换为数字型,返回一个浮点数

console.log(parseInt("3.1415"));//==>3.1415
		console.log(parseInt("3.33"));//==>3.33
		console.log(parseInt("30fm"));//==>30	会去掉后面的字母
		console.log(parseInt("cc30fm"));//==>NaN
7、Number()

字符串转换为数字

	var str = "123";
	console.log(Number(str));//123
	console.log(Number("123"));
	//算术运算符- * /	隐式转换
	console.log("123" - 11);//121
	console.log("123" * 2);
8、Boolean()
		//Boolean()可以将任意类型的值转为布尔值
		// 除了undefined,null,0,NaN,''空字符串
		console.log(Boolean(undefined));// false
		console.log(Boolean(null));
		console.log(Boolean(0));
		console.log(Boolean(''));// false
		
		console.log(Boolean(true));//true
		console.log(Boolean(false));//false
		// 注意,所有对象(包括空对象)的转换结果都是true,
		// false对应的布尔对象new Boolean(false)也是true
		console.log( new Boolean(false));//true
9、toExponential()

根据小数点后的指定的有效数字转换为指数形式的字符串

10、日期类型
		//date
		var date = new Date();
		console.log(date.toString());           // Fri May 28 2021 19:29:23 GMT+0800 (中国标准时间)
		console.log(date.toLocaleString());     // 2021/5/28 下午7:29:23
		console.log(date.toLocaleDateString()); //2021/5/28
		console.log(date.toLocaleTimeString()); //下午7:29:23

数组类型的 toLocaleString 就是将数组中的数值类型和日期类型分别按 toLocaleString 转换为字符串,再形成整体字符串


自动转换

当一个值为字符串,另一个值为非字符串,则后者转为字符串。

在这里插入图片描述

类型转换表JavaScript权威指南第六版3.8

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值