第九章 内置对象
所谓内置对象其实就是系统内置的构造函数。
1 Boolean
把一个原始值当做对象去使用的时候,会自动包装成对象。
// 直接赋值
var b1 = true;
// 转换函数
var b2 = Boolean(false);
// 构造函数
var b3 = new Boolean(false); //依然可以类型转换 原始值的包装对象形式
console.log(b1,b2,b3);
console.log(b3.constructor);
console.log(b1.constructor); //把一个原始值当做对象去使用的时候,自动包装成对象
console.log(b3 instanceof Boolean); //true
console.log(b1 instanceof Boolean); //false
2 Number
2.1 属性
属性名 | 含义 |
---|---|
Number.MAX_VALUE | JS可表示的最大数字,是Number构造函数本身的属性,不是数字对象的属性!! |
Number.MIN_VALUE | JS可表示的最小数字,是Number构造函数本身的属性,不是数字对象的属性!! |
2.2 方法
方法名 | 含义 |
---|---|
toFixed([digits]) | 保留指定位数的小数,如果不指定位数就取整, |
toString() | 转为字符串,指定进制,把数字转换为指定的进制形式 |
3 String对象
3.1 属性
属性名 | 含义 |
---|---|
length | 字符串长度 |
3.2 方法
方法名 | 含义 |
---|---|
indexOf() | 返回字符串/字符在某个字符串第一次出现的位置 没有-1 |
lastIndexOf() | 返回字符串/字符在某个字符串最后一次出现的位置 没有-1 |
slice(start, end) | 截取字符串,指定开始索引和结束索引,结束索引不会被截取到,第二个参数可以省略(截取到最后) |
substring(start, end) | 同上 |
substr(start, lenth) | 截取字符串,指定开始索引和截取长度; 第二个参数可以省略(截取到最后) |
split() | 把字符串分割为数组,可以指定分隔符 |
toUpperCase() | 字符串转为大写 |
toLowerCase() | 字符串转为小写 |
chatCodeAt() | 返回指定位置字符的unicode字符码 |
String.fromCharCode() | 根据unicode编码生成指定字符 (不是字符串对象的方法,是String构造函数的方法) |
search(regexp) | 查找字符串 可用于正则匹配 |
match(regexp) | 匹配字符串 可用于正则匹配 |
replace(regexp/substr, newSubStr/function) | 替换字符串 可用于正则替换 |
4 Math
4.1 属性
属性名 | 含义 |
---|---|
Math.PI | 返回圆周率 |
4.2 方法
方法名 | 含义 |
---|---|
Math.abs(x) | 求绝对值 |
Math.sqrt(x) | 求平方根 |
Math.pow(x,y) | 求 x 的 y 次幂 |
Math.max([x[, y[, …]]]) | 返回参数里面最大的值 |
Math.min([x[, y[, …]]]) | 返回参数里面最小的值 |
Math.round(x) | 四舍五入取整 |
Math.floor(x) | 向下取整 |
Math.ceil(x) | 向上取整 |
Math.random() | 返回一个 0 到 1 之间的伪随机数,但是不包括 1(左闭右开) |
5 Date
5.1 创建一个 date 对象
new Date();
new Date(value);
new Date(dateString);
new Date(year, monthIndex [, day [, hours [, minutes [, seconds [, milliseconds]]]]]);
如果没有提供参数,那么新创建的 Date 对象表示实例化时刻的日期和时间。
value 表示一个时间戳
dateString 表示日期的字符串值,如“December 17, 1995 03:24:00” 或者 “1995-12-17T03:24:00”
var today = new Date();
var birthday = new Date('December 17, 1995 03:24:00');
var birthday = new Date('1995-12-17T03:24:00');
var birthday = new Date(1995, 11, 17);
var birthday = new Date(1995, 11, 17, 3, 24, 0);
5.2 Date 对象方法
方法名 | 含义 |
---|---|
Date.now() | 返回自 1970-1-1 00:00:00 UTC(世界标准时间)至今所经过的毫秒数。 |
Date.UTC() | 返回从1970-1-1 00:00:00 UTC到指定日期的的毫秒数。Date.UTC(year,month[,date[,hrs[,min[,sec[,ms]]]]]) |
getYear() | 根据特定日期返回年份 (通常 2-3 位数),不推荐使用 |
getFullYear() | 根据本地时间返回指定日期对象的年份(四位数年份时返回四位数字)。 |
getMonths() | 根据本地时间返回指定日期对象的月份(0-11)。 |
getDay() | 根据本地时间返回指定日期对象的星期中的第几天(0-6)。 |
getDate() | 根据本地时间返回指定日期对象的月份中的第几天(1-31)。 |
getHours() | 根据本地时间返回指定日期对象的小时(0-23)。 |
getMinutes() | 根据本地时间返回指定日期对象的分钟(0-59)。 |
getSeconds() | 根据本地时间返回指定日期对象的秒数(0-59)。 |
getMilliseconds() | 根据本地时间返回指定日期对象的毫秒(0-999)。 |
getUTCYear() getUTCFullYear() getUTCMonth() getUTC... ... |
根据世界时返回特定日期对象所在的年、月、日、时、分、秒。 |
getTime() | 返回从1970-1-1 00:00:00 UTC(协调世界时)到该日期经过的毫秒数,对于1970-1-1 00:00:00 UTC之前的时间返回负值。 |
getTimezoneOffset() | 返回当前时区的时区偏移。 |
setYear() setFullYear() setMonth() ... setTime() ... setUTCYear() setUTCFullYear() setUTC... ... |
设置 Date 对象中年、月、日、时、分、秒。 |
6 Array
6.1 属性
属性名 | 含义 |
---|---|
length | 数组的长度,数组元素的个数。 |
6.2 访问方法
下面的这些方法绝对不会改变调用它们的对象的值,只会返回一个新的数组或者返回一个其它的期望值。
方法名 | 含义 |
---|---|
concat(value1[, value2[, ...[, valueN]]]) | 返回一个由当前数组和其它若干个数组或者若干个非数组值组合而成的新数组。 |
slice([begin[, end]]) | 抽取当前数组中的一段元素组合成一个新数组,数组截取。 |
join([separator]) | 连接所有数组元素组成一个字符串。 |
6.3 修改器方法
下面的这些方法会改变调用它们的对象自身的值。
方法名 | 含义 |
---|---|
push(element1, ..., elementN) | 在数组的末尾增加一个或多个元素,并返回数组的新长度。 |
pop() | 删除数组的最后一个元素,并返回这个元素。 |
unshift(element1, ..., elementN) | 在数组的开头增加一个或多个元素,并返回数组的新长度。 |
shift() | 删除数组的第一个元素,并返回这个元素。 |
splice(start[, deleteCount[, item1[, item2[, ...]]]]) | 在任意的位置给数组添加或删除任意个元素。 |
reverse() | 颠倒数组中元素的排列顺序,即原先的第一个变为最后一个,原先的最后一个变为第一个。 |
sort([compareFunction]) | 对数组元素进行排序,并返回当前数组。 |
6.4 ES5 方法
方法名 | 含义 |
---|---|
forEach(callback[, thisArg]) | 为数组中的每个元素执行一次回调函数,用于数组遍历 |
filter(callback[, thisArg]) | 将所有在过滤函数中返回 true 的数组元素放进一个新数组中并返回,用于数组过滤。 |
map(callback[, thisArg]) | 返回一个由回调函数的返回值组成的新数组。 |
every(callback[, thisArg]) | 如果数组中的每个元素都满足测试函数,则返回 true ,否则返回 false。 |
some(callback[, thisArg]) | 如果数组中至少有一个元素满足测试函数,则返回 true,否则返回 false。 |
reduce(callback[, initialValue]) | 从左到右为每个数组元素执行一次回调函数,并把上次回调函数的返回值放在一个暂存器中传给下次回调函数,并返回最后一次回调函数的返回值。 |
reduceRight(callback[, initialValue]) | 从右到左为每个数组元素执行一次回调函数,并把上次回调函数的返回值放在一个暂存器中传给下次回调函数,并返回最后一次回调函数的返回值。 |
indexOf(searchElement[, fromIndex]) | 返回数组中第一个与指定值相等的元素的索引,如果找不到这样的元素,则返回 -1。 |
lastIndexOf(searchElement[, fromIndex]) | 返回数组中最后一个(从右边数第一个)与指定值相等的元素的索引,如果找不到这样的元素,则返回 -1。 |
7 Function
7.1 属性
属性名 | 含义 |
---|---|
length | 获取函数的接收参数个数。 |
7.2 方法
方法名 | 含义 |
---|---|
call(thisArg, arg1, arg2, ...) | 在一个对象的上下文中应用另一个对象的方法;参数能够以列表形式传入。 |
apply(thisArg, [argsArray]) | 在一个对象的上下文中应用另一个对象的方法;参数能够以数组形式传入。 |
bind(thisArg[, arg1[, arg2[, ...]]]) | 创建一个新的函数,这个新函数的 this 被指定为 bind() 的第一个参数而 bind() 的其余参数将作为新函数的参数,供调用时使用。 |
8 JSON
8.1 JSON 对象的方法
方法名 | 含义 |
---|---|
JSON.parse() | 解析JSON字符串并返回对应的值。 |
JSON.stringify() | 返回与指定值对应的JSON字符串。 |
8.2 json 数据格式
1)json( JavaScript Object Notation)是一种前后端数据交互的数据格式。
2)json本质上是一个字符串,简称json串。
{
"paramz": {
"feeds": [
{
"id": 299076,
"oid": 288340,
"category": "article",
"data": {
"subject": "汉东新闻2.0:不止是阅读",
"summary": "汉东广电旗下资讯类手机应用“汉东新闻”于近期推出全新升级换代的2.0版。",
"cover": "/Attachs/Article/288340/3e8e2c397c70469f8845fad73aa38165_padmini.JPG",
"pic": "",
"format": "txt",
"changed": "2019-09-22 10:01:42"
}
}
],
"PageIndex": 1,
"PageSize": 20,
"TotalCount": 53521,
"TotalPage": 2677
}
}
注意:
json 格式参照 JavaScript 对象、数组的语法,但有些不同,如 :
① json 中属性名称必须是双引号括起来的字符串,最后一个属性后不能有逗号。
② json 中字符串必须用双引号括起来。
9 全局对象的方法(全局函数)
全局对象 (global object) 是可以在全局作用域里,通过this访问(但只有在 ECMAScript 5 的非严格模式下才可以,在严格模式下得到的是 undefined)。在浏览器端,全局对象就是 window 对象。
全局的对象( global objects )或称标准内置对象,不要和 "全局对象(global object)" 混淆。这里说的全局的对象指的是全局对象的属性。全局对象的属性都在全局作用域中。
9.1 属性
属性名 | 含义 |
---|---|
NaN | 一个 number 类型的值,Not-A-Number。 |
Infinite | 一个number类型的值,表示无穷大。 |
9.2 方法
方法名 | 含义 |
---|---|
eval(string) | 会将传入的字符串当做 JavaScript 代码进行执行。 |
encodeURI() | 通过将特定字符的每个实例替换为一个、两个、三或四转义序列来对统一资源标识符 (URI) 进行编码 |
decodeURI() | 函数能解码由 encodeURI() 创建或其它流程得到的统一资源标识符(URI) |
isNaN() | 确定一个值是否为 NaN。 |
isFinite() | 判断一个数是否是有限数值。 |
parseInt() | 从字符串中提取整数。 |
parseFloat() | 从字符串中提取浮点数。 |