JavaScript - 数值和日期

Numbers

在JavaScript中,没有特别的类型对应整型。还有三种象征性的类型数值:+Infinity -Infinity NaN(非数字)

Decimal numbers

十进制数值

1234567890
42

// Caution when using leading zeros:

0888 // 888 parsed as decimal
0777 // parsed as octal in non-strict mode (511 in decimal)

Binary numbers

二进制数值 (0b 或者 0B 起始),若0b或者0B之后的数字不是0或者1,会出现语法错误

var FLT_SIGNBIT  = 0b10000000000000000000000000000000; // 2147483648
var FLT_EXPONENT = 0b01111111100000000000000000000000; // 2139095040
var FLT_MANTISSA = 0B00000000011111111111111111111111; // 8388607

Octal numbers

八进制数值,定义起始标志为:0,若后续出现的数字超过7,那么该数值会被视为十进制数值。ECMAScript5八进制数值,定义起始标志为:0o

var n = 0755; // 493
var m = 0644; // 420

var a = 0o10; // ES2015: 8

Hexadecimal numbers

十六进制数值,定义起始标志为:0x或者0X,后续数值范围为:0123456789ABCDEF,若不符合,会出现语法错误。

0xFFFFFFFFFFFFFFFFF // 295147905179352830000
0x123456789ABCDEF   // 81985529216486900
0XA                 // 10

Exponentiation

指数

1E3   // 1000
2e6   // 2000000
0.1e2 // 10

数值对象

内置Number object

var biggestNum = Number.MAX_VALUE;
var smallestNum = Number.MIN_VALUE;
var infiniteNum = Number.POSITIVE_INFINITY;
var negInfiniteNum = Number.NEGATIVE_INFINITY;
var notANum = Number.NaN;

数值对象的属性

属性描述
Number.MAX_VALUE可表述的最大数值
Number.MIN_VALUE可表述的最小数值
Number.NaN特指非数字的值
Number.NEGATIVE_INFINITY特指负无限值
Number.POSITIVE_INFINITY特指正无限值
Number.EPSILON该值和最小值之间的差值,但是其所表示的值大于“该值”
Number.MIN_SAFE_INTEGERJavaScript中最小的安全整数
Number.MAX_SAFE_INTEGERJavaScript中最大的安全整数

 

 

 

 

 

 

 

 

 

数值对象的方法

方法描述
Number.parseFloat()解析传入的字符串参数,返回浮点型数值
Number.parseInt()解析传入的字符串参数,返回整型数值
Number.isFinite()判定传入的值是否为限定的数值
Number.isInteger()判定传入的值是否为整型数值
Number.isNaN()判定传入的值是否为“非数字”
Number.isSafeInteger()判定传入的值是否为安全的整型数值

 

 

 

 

 

 

 

 

Number原型的方法

方法描述
toExponential()返回该数值的指数形式,以字符串样式表现结果
toFixed()返回该数值的固定小数位形式,以字符串样式表现结果
toPrecision()返回该数值指定精度的,字符串样式的结果

 

 

 

 

 

数学对象

内置Math object

Math.PI
Math.sin(1.56)
方法描述
abs()绝对值
sin(), cos(), tan()标准三角函数,参数为弧度
asin(), acos(), atan(), atan2()反三角函数,返回值为弧度
pow(), exp(), expm1(), log10(), log1p(), log2()指数,对数
floor(), ceil()返回小于等于传入参数的最大整数,返回大于等于传入参数的最小整数
min(), max()返回传入参数列表中的最小、最大值
random()返回介于0和1,之间的随机数
round(), fround(), trunc()对传入参数取整,或者切断
sqrt(), cbrt(), hypot()平方根、立方根、传入参数和的平方根
sign()数值的符号,指示数值为:负数、整数、零
clz32(), imul() 
sinh(), cosh(), tanh()双曲率三角函数
asinh(), acosh(), atanh()反双曲率三角函数

 

 

 

 

 

 

 

 

 

 

 

 

 

 

日期对象

// 创建日期对象
var dateObjectName = new Date([parameters]);
  • 分和秒:0-59
  • 小时:0-23
  • 日(Day):0(星期日)-6(星期六)
  • 日(Date):1-31(月份中对应的某一天)
  • 月份:0(一月)-11(十二月)
  • 年份:起始月1900
var Xmas95 = new Date('December 25, 1995');

var today = new Date();
var endYear = new Date(1995, 11, 31, 23, 59, 59, 999); // Set day and month
endYear.setFullYear(today.getFullYear()); // Set year to this year
var msPerDay = 24 * 60 * 60 * 1000; // Number of milliseconds per day
var daysLeft = (endYear.getTime() - today.getTime()) / msPerDay;
var daysLeft = Math.round(daysLeft); //returns days left in the year

var IPOdate = new Date();
IPOdate.setTime(Date.parse('Aug 9, 1995'));

function JSClock() {
  var time = new Date();
  var hour = time.getHours();
  var minute = time.getMinutes();
  var second = time.getSeconds();
  var temp = '' + ((hour > 12) ? hour - 12 : hour);
  if (hour == 0)
    temp = '12';
  temp += ((minute < 10) ? ':0' : ':') + minute;
  temp += ((second < 10) ? ':0' : ':') + second;
  temp += (hour >= 12) ? ' P.M.' : ' A.M.';
  return temp;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值