内置对象(JSON、Math、Date)与包装对象


内置对象JSON

1.什么是json,json作用

json是一种数据格式;现在我们大多数都是通过json数据格式进行前后端数据交互的,json本质上是一个字符串,简称json串

前端往后台传数据的时候,要传json格式的数据json串

在前端json串的格式原形就是对象或者对象的数组;所以我们要先把数据存储为对象或者对象的数组,然后转化为json串进行传递

2. JSON对象的方法

方法 作用 返回值
JSON.parse(text,[reviver]) 解析JSON字符串 Object类型
JSON.stringify(value,[replacer], [space]) 将一个 JavaScript 对象或值转换为 JSON 字符串

JSON.stringify参数

  • value

将要序列化成 一个 JSON 字符串的值。

  • replacer 可选

如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理;如果该参数是一个数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中;如果该参数为 null 或者未提供,则对象所有的属性都会被序列化。

  • space 可选

指定缩进用的空白字符串,用于美化输出(pretty-print);如果参数是个数字,它代表有多少的空格;上限为10。该值若小于1,则意味着没有空格;如果该参数为字符串(当字符串长度超过10个字母,取其前10个字母),该字符串将被作为空格;如果该参数没有提供(或者为 null),将没有空格。

JSON.parse参数

  • text

要被解析成 JavaScript 值的字符串,关于JSON的语法格式,请参考:JSON

  • reviver 可选

转换器, 如果传入该参数(函数),可以用来修改解析生成的原始值,调用时机在 parse 函数返回之前。

内置对象Math

方法 描述
abs(x) 返回数的绝对值
ceil(x) 对数进行上舍入
floor(x) 对数进行下舍入
max(x,y) 返回x和y中的最高值
min(x,y) 返回x和y中的最低值
pow(x,y) 返回x的y次幂
random() 返回0-1之间的随机数(不包含1)
round(x) 把数四舍五入为最接近的整数
sqrt(x) 返回数的平方根

内置对象Date

var date=new Date();

? eg:Date没参数是获取当前时间,给Date传时间戳是获取时间戳的时间

方法 作用
date.getFullYear()
date.getMonth()
date.getDate()
date.getHours()
date.getMinutes()
date.getSeconds()
date.getDay() 星期几
date.toLocaleTimeString() 当前时间的本地格式化字符串
date.toLocaleDateString() 当前日期的本地格式化字符串
date.getTime() 1970 年 1 月 1 日到现在之间的毫秒数(又叫时间戳)

包装对象

存取字符串、数字或布尔值的属性时,创建的临时对象称为包装对象

作用:基本数据类型也可以使用.调用方法

概念:数值、字符串、布尔值分别相对应的NumberStringBoolean三个原生对象,这三个原生对象可以把原始类型的值变成(包装成)对象

var a = 100;
console.log(a);
console.log(a.toString());

a.toString() 执行到这一行的时候做了很多事情:

  1. a = new Number(a); 先把数字原始值转化为包装对象
  2. a.toString; 调用的其实是包装对象的原型当中的toString方法
  3. 调用结束后自动再让a变回原始值 a = 100;
var und;
console.log(und.toString()); // 报错,原因是因为undefined没有包装对象

相关