JavaScript内置对象
第二周周一…JavaScript内置对象
Glboal对象 (全局对象)
它是一个特殊的对象,实际上,所有在全局作用域中定义的属性和函数,都是全局对象的属性和方法.
在JavaScript中,全局对象就是window对象.
全局对象的方法:
- encodeURI() //对字符串进行编码形成可用的URI(通用资源标识符)
- encodeURIComponent() //将字符串编码为URI组件,与encodeURI的区别就是它的参数是URI的一部分(比如协议\主机名\路径\查询字符串) 它也会把不属于URI的特殊字符进行编码(如冒号,正斜杆,问号,#号),而encodeURI()不会.
- decodeURI()
- decodeURIComponent()
- escape() //将字符串进行编码
- eval() //计算Js字符串,并把它作为脚本代码来执行
- isFinite() //判断某个值是否为有穷数
- isNaN() //is not a number 判断检查参数是否为非数字值.
- Number() //将对象的值转化为函数,如果无法转换则返回NaN
- parseInt() //将字符串转换为整数
- parseFloat() //将字符串转换为浮点数
- String() //将对象的值转化为字符串
- unescape() //将escape()编的码转化为字符串
- NaN // Not-A-Number
- Infinity //全局属性,表示无穷
引用类型
在ECMAScript中,引用类型是一种数据结构,用于将数据和功能组织在一起.引用类型有时候也被称为对象定义,因为它们描述的是一类对象所具有的属性和方法.
对象是某个特定引用类型的实例,新对象是使用new操作符加一个构造函数生成的.
1 | var person = new Object(); |
这行代码创建一个 Object()类型的新实例, 保存到person变量中.
构造函数Object为新对象定义了默认的属性和方法.
Object 类型
创建Object类型
创建Object类型有两种方法
1.使用new操作符1
var person = new Object();
2.对象字面量法1
2
3
4
5
6
7var apple = {
price: 100,
color: 'red',
from: 'GuangZhou',
isFruit: true,
to where: 'BeiJing'
};
访问对象属性
1 | apple.price; //100 |
Array 类型
创建数组类型
ECMAScript数组的每一项可以保存任何类型的数据
1.采用Array构造函数1
2
3
4
5var array = new Array();
// var array = Array();
array[0] = 1;
array[1] = 2;
// array = [1, 2];
2.数组字面量法1
var a = [1, 2, 3, 5, 'Fuck'];
数组的length属性不是只读的,通过改变length属性的值可以从数组的末尾删除元素或者添加新元素.1
2
3
4
5
6
7var a = [1, 2, 3];
a.length = 2;
console.log(a); // [1, 2]
a.length = 3;
console.log(a[2]); //undefined
a[a.length] = 4;
console.log(a) // [1, 2, undefined, 4];
讲几个Array的方法
slice & splice
1 | //Array.prototype.slice(beginIndex, endIndex); 不包括结束 |
pop & push & shift & unshift
1 | var a = [1, 2, 3, 4]; |
pop() & push() 可实现堆栈(LIFO).
shift() & push() 可实现队列(FIFO).
这四个方法都会改变数组的长度.
reduce() & map() & filter
reduce() 方法对累加器和数组中的每个元素 (从左到右)应用一个函数,将其减少为单个值。不会改变原数组
array.reduce(function(accumulator, currentValue, currentIndex, array), initialValue)
1 | var a = [1, 2, 3, 4, 5]; |
1 | # map |
1 | var a = [3, 4, 5, 6, 7, 8, 10] |
Date 类型
1 | var date = new Date(); |
Function 类型
http://chenpt.cc/2017/07/13/Js-Function/
基本包装类型(String,Number,Boolean)
String
- type1:”wow”
- type2:`hello world`
1 | var str1 = "wow" + " fuck"; // "wow fuck" |
RegExp 构造函数创建了一个正则表达式对象RegExp
RegExp 构造函数创建了一个正则表达式对象
三种方法: 字面量, 构造函数, 工厂符号1
2
3
4
5
6
7/pattern/flags
new RegExp(pattern [, flags])
RegExp(pattern, [,flags]);
//pattern 正则表达式的文本
// flags
// g: 找到所有匹配,而不是在第一个匹配后停止
1 | var pattern = /*.com/g |