JS学习2

类型转换

1) 其他数据类型到Boolean类型转换

	通过Boolean() 函数转换

	   【Boolean	  true	    false】
		String		非空字符串	""
		Number		任何非0		0和NaN
		Object		任何对象	null
		Undefined	n/a			undefined	(n/a not applicable 不适用)
		例如:
		Boolean("");		//false
		Boolean(0);			//false
		Boolean(NaN);		//false
		Boolean(null)		//false
		Boolean(undefined)	//false
		Boolean("briup");	//true
		Boolean(1);			//true

2) 其他数据类型到数值类型转换

**1.Number()函数**
		1) 如果转换的值是null,undefined,boolean,number
			Number(true);		//1
			Number(false);		//0
			Number(null);		//0
			Number(undefined);	//NaN
			Number(10);			//10 如果是数字值,原样输出
	
		2) 如果是字符串:
			Number("123");  //如果仅包含数值,转换为对应的数值
			Number("234.1");//解析为对应的小数
			Number("+12.1");//首位为符号位,其余为为数值,转换为对应的数值
			Number("1+2.3");//NaN 符号位出现在其他位置,解析为NaN
			Number("0xa");  //如果仅包含十六进制格式,转为为对应的十进制的值
			Number("010");	//【注意!】不会当做八进制被解析,结果为10
			Number("");		//空字符串被转换为0
			Number("123ac");//包含其他字符: NaN
			Number(" 12");	//12

**2.parseInt()函数**
		1) 如果转换的值是null,undefined,boolean,number
			parseInt(true);		//NaN
			parseInt(false);	//NaN
			parseInt(null);		//NaN
			parseInt(undefined);//NaN
			parseInt(10);		//10 如果是整数值,原样输出
			parseInt(10.3);		//10 如果是小数,舍去小数点一级后面的内容
		2) 如果是字符串:
			parseInt("123");  //123;如果仅包含数值,转换为对应的数值
			parseInt("234.1");//234;小数点后面的数值省略
			parseInt("+12.1");//12; 首位为符号位,其余为为数值,转换为整数
			parseInt("0xa");  //10; 如果仅包含十六进制格式,转为为对应的十进制的值
			parseInt("010");  //10; 【注意!】不会当做八进制被解析,结果为10
			parseInt("");	  //NaN;空字符串被转换为NaN
			parseInt("1+2.3");//1;	如果首位为数值,依次向后解析,找到连续的数值,直到遇到第一个非数值的,将之前获取的数值转换为Number返回
			parseInt("123ac");//123;

  ***3.parseFloat()函数***
 		与parseInt() 类似,但是也有不同: 
			1.字符串中的第一个小数点是有效的,而第二个小数点则无效其后的内容会被省略
			2.始终忽略前导0
			parseFloat("22.3.4")	//22.3
			parseFloat("022.34");	//22.34
			3.不能解析0x

3) 其他数据类型到字符串类型转换

	1. toString()函数
		默认情况下,toString()是以十进制格式返回【数值】的字符串表示,通过传递参数,可以输入以二进制,八进制,十六进制,乃至任意有效进制格式的字符串值
			var num = 10;
			num.toString();		"10"
			num.toString(2);	"1010"
			num.toString(8);	"12"
			num.toString(16);	"a"
		但是null ,undefined 没有toString() 方法
  			null.toString()			//报错 TypeError: null has no properties	 
   			undefined.toString();	//报错 TypeError: undefined has no properties

字符串对象

	length		
		属性,获取字符串的字符数量
	charAt(i)	
		返回给定位置的字符
	charCodeAt()	
		返回给定位置的字符的字符编码
					var s = "helloworld";
					s.charAt(1);	   //e
					s.charCodeAt(1); //101
	concat()	
		将一个或多个字符串拼接起来,返回拼接得到的新字符串,但是大多使用"+"拼接
	slice()		
		(参数1:开始位置,参数2:返回字符后一个字符位置)
	substr()	
		(参数1:开始位置,参数2:返回字符个数)
	substring()	
		(参数1:开始位置,参数2:返回字符后一个字符位置)
					var s = "helloworld";
					s.slice(3,7);	 //lowo
					s.substr(3,7);	 //loworld
					s.substring(3,7);//lowo
					s		 //helloworld 不改变原值大小
	indexOf();	
		从前往后查找指定字符所在位置
	lastIndexOf();	
		从后往前查找字符串所在位置,可以有第二个参数,代表从字符串中哪个位置开始查找。
	trim();		
		删除前置以及后置中的所有空格,返回结果
					var s = " hello world ";
					console.log("|"+s.trim()+"|");	//|hello world|
	split()
		分割字符串 返回一个数组
					var s = "hello world";
					console.log(s.split(" "));
					console.log(s.split(" ").length);
					console.log(s.split(" ")[0]);
					console.log(s.split(" ")[1]);
	toLowerCase()	:转换为小写
	toUpperCase()	:转换为大写

日期对象

	var date = new Date();
	console.log(date);

	//获得当前年份-1900
	console.log(date.getYear());
	//获得当前年份
	console.log(date.getFullYear());
	//获得当前月份-1
	console.log(date.getMonth());
	//获得当前是一个月中的哪一号
	console.log(date.getDate());
	//获得星期几
	console.log(date.getDay());
	//获得时间中的 时 (24)
	console.log(date.getHours());
	//获得时间中的 分 
	console.log(date.getMinutes());
	//获得时间中的 秒 
	console.log(date.getSeconds());
	//获得时间中的 毫秒 
	console.log(date.getMilliseconds());

	getTime();

Math对象

	1.随机数
		Math.random() 返回大于0小于1的一个随机数[0,1)
	2.将小数值舍入为整数的几个方法:
		Math.ceil()  向上舍入
		Math.floor() 向下舍入
		Math.round() 四舍五入
		console.log(Math.ceil(12.41));	//13
		console.log(Math.floor(12.41));	//12
		console.log(Math.round(12.3));	//12
		console.log(Math.round(12.5));	//13
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值