(2020-09-03)javascript_4

1.javascript数字

javascript只有一种数值类型。【没有整数和小数之分】

实例:

var x = 3.14;    // 带小数点的数值
var y = 3;       // 不带小数点的数值

超大或超小的数可通过科学计数法去写:

实例:

var x = 123e5;    // 12300000
var y = 123e-5;   // 0.00123

javascript数值始终以双精度浮点数来存储。

整数(不使用指数或科学计数法)会被精确到15位。

小数的最大数是17位,但浮点的算数并不是总是100%精准。

var x = 0.2 + 0.1;         // x 将是 0.30000000000000004

使用乘除法有助于解决上面的问题

var x = (0.2 * 10 + 0.1 * 10) / 10;       // x 将是 0.3

数字与字符串相加

如果您对两个数相加,结果将是一个数字

实例

var x = 10;
var y = 20;
var z = x + y;           // z 将是 30(一个数)

如果对两个字符串相加,结果将是一个字符串

实例

var x = "10";
var y = "20";
var z = x + y;           // z 将是 1020(字符串)

如果您对一个字符串和一个数字相加,结果也是字符串

var x = 10;
var y = "20";
var z = x + y;   		// z 将是 1020(字符串)

如何将一个数字以最快的方式转换成字符串【数字+空字符串【“”】】

var x=10+"";  // 10是字符串
var z=x+20;
alert(z);  //z=1020

如何将一个字符串以最快的方式转换成数字【字符串*1】

var x="10"*1; //10是数字
var z=x+20;
alert(z);  //z=30

实例

var x = 10;
var y = 20;
var z = "30";
var result = x + y + z;

javascript从左向右进行编译。

因为x和y都是数字,10+20将被相加,得到30的数字。

因为z是字符串,30+“30”被级联。此时result值为3030。

NaN-非数值

NaN属于javascript保留词,指示某个数不是合法数字。

实例

var x = 100 / "Apple";  // x 将是 NaN(Not a Number)

您可以使用全局javascript函数isNaN()来确定某个值是否是数字:

isNaN()返回值是一个布尔型

false表示是一个数字  true表示不是一个数字

var x="10*1";
alert(isNaN(x));   //true

typeof属性  判断指定的数据是什么类型

var x=10*1;
alert(typeof x); //number

常见类型number  string  boolean   object【对象/数组/null】  undefind【未定义】

infinity(或-infinity)是javascript在计算数时超出最大可能数范围时返回的值。【计算不了的时候会出现】

实例

var x =  2 / 0;           // x 将是 Infinity
var y =  -2 / 0;          // y 将是 -Infinity

当使用==相等运算符时,相等的数看上去相等:

实例

var x = 500;             
var y = new Number(500);
// (x == y) 为 true,因为 x 和 y 有相等的值

当使用===相等运算符后,相等的数变为不相等,因为===运算符需要类型和值同时相等。

实例

var x = 500;             
var y = new Number(500);
// (x === y) 为 false,因为 x 和 y 的类型不同

还有重要的一点:在javascript中对象无法比较

实例

var x = new Number(500);             
var y = new Number(500);
// (x == y) 为 false,因为对象无法比较

javascript数值方法

tostring()方法把数输出为十六进制,八进制或二进制。以字符串返回数值。

tofixed()返回字符串值,它包含了指定位数小数的数字:

var a=new Number(128);
alert(a.toFixed(2)); //128.00

将变量转换成数字

number()方法    不区分类型

parselnt()方法    只转整数

parsefloat()方法   只转小数

number()方法

var a="128.23";
alert(Number(a)); //128.23
var b="128";
alert(Number(b)); //128
var c=true;
alert(Number(c)); //1

parselnt()方法

var a="128.23";
alert(parseInt(a)); //128
var b="128";
alert(parseInt(b)); //128
var c=true;
alert(parseInt(c)); //NAN

parsefloat()方法

var a="128.23";
alert(parseFloat(a)); //128.23
var b="128";
alert(parseFloat(b)); //128
var c=true;
alert(parseFloat(c)); //NAN

max_value-------返回javascript中可能的最大数。

min_value--------返回javascript中可能的最小数。

alert("返回 JavaScript 中可能的最大数字---"+Number.MAX_VALUE); 
alert("返回 JavaScript 中可能的最小数字---"+Number.MIN_VALUE); 

2.javascript日期

创建日期对象

new Date()

new Date(year,month,day,hours,minutes,seconds,milliseconds)

new Date(milliseconds)

new Date(date  string)

日期获取方法

获取方法用于获取日期的某个部分(来自日期对象的信息)。下面是最常用的方法(以字母顺序排序):

getDate()  以数值返回天(1-31)

getDay()    以数值获取周名(0-6)

getFullyear() 获取四位的年(yyyy)

getHours()    获取小时(0-23)

getMilliseconds()  获取毫秒(0-999)

getMinutes()   获取分(0-59)

getMonth()       获取月(0-11)

getSeconds()     获取秒(0-59)

getTime()          获取时间(从1970年1月1日至今)

日期设置方法

设置方法用于设置日期的某个部分。下面是最常用的方法(按照字母顺序排序):

setDate()           以数值(1-31)设置日

setFullYear()       设置年(可选月和日)

setHours()           设置小时(0-23)

setMilliseconds()   设置毫秒(0-999)

setMinutes ()          设置分(0-59)

setMonth()              设置月(0-11)

setSeconds()           设置秒(0-59)

setTime()                  设置时间(从1970年1月1日至今的毫秒数)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script>
			function test(){
				//创建日期对象
				//new Date() 用当前日期和时间创建新的日期对象:
				//var date1=new Date(); 
				//alert(date1);
				//new Date(year, month, ...) 用指定日期和时间创建新的日期对象。
				//7个数字分别指定年、月、日、小时、分钟、秒和毫秒(按此顺序):
				//var date2=new Date(2020,1,20,13,30,59,222);
				//alert(date2);
				//new Date(milliseconds) 以1970 年 1 月 1 日 00:00:00 UTC(协调世界时)以来的毫秒数。为参数计算时间日期
				//var date3=new Date(10000);
				//alert(date3);
				//var date4=new Date("2020/11/20 13:30:59");//通过string设置一个时间日期
				//2020/11/20  2020-11-20
				//alert(date4);
				
				/*
				//得到当前系统时间
				var date1=new Date(); 
				//getFullYear()	获取四位的年(yyyy)
				var y=date1.getFullYear();
				//getMonth()	获取月(0-11)
				var m=date1.getMonth()+1;
				//getDate()	以数值返回天(1-31)[月中的天]
				var d=date1.getDate();
				//getHours()	获取小时(0-23)
				var h=date1.getHours();
				//getMinutes()	获取分(0-59)
				var mm=date1.getMinutes();
				//getSeconds()	获取秒(0-59)
				var s=date1.getSeconds();
				//getDay()	以数值获取周名(0-6)
				var w=date1.getDay();
				var dateString=y+"/"+m+"/"+d+" "+h+"-"+mm+"-"+s+"  星期"+w;
				alert(dateString);
				*/
			   
			   /*
			    //getTime()	获取时间(从 1970 年 1 月 1 日至今)
				var date1=new Date(1999,10,1); 
				var haoniao=date1.getTime();
				alert(haoniao);
				*/
			   
			   //得到当前系统时间
			   var date1=new Date(); 
			   date1.setFullYear(1999);
			   //getFullYear()	获取四位的年(yyyy)
			   var y=date1.getFullYear();
			   //getMonth()	获取月(0-11)
			   var m=date1.getMonth()+1;
			   //getDate()	以数值返回天(1-31)[月中的天]
			   var d=date1.getDate();
			   //getHours()	获取小时(0-23)
			   var h=date1.getHours();
			   //getMinutes()	获取分(0-59)
			   var mm=date1.getMinutes();
			   //getSeconds()	获取秒(0-59)
			   var s=date1.getSeconds();
			   //getDay()	以数值获取周名(0-6)
			   var w=date1.getDay();
			   var xq=["星期天","星期一","星期二","星期三","星期四","星期五","星期六"];
			   var dateString=y+"/"+m+"/"+d+" "+h+"-"+mm+"-"+s+" "+xq[w];			   				alert(dateString);
			}
		</script>
	</head>
	<body onload="test();">
	</body>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值