JavaScript学习笔记三
2018-02-08 20:27
113 查看
1.定义对象的方法:使用构造函数和使用对象字面量;
2.判断是否是数组:isArray();
3.数组的一些方法:
①栈方法:push()接收任意数量参数,逐个添加到数组的尾部,返回长度;pop()从数组的末尾移除最后一项,返回移除项;
②队列方法:shift()移除数组的第一项,返回移除项;unshift()在数组前端添加任意项,返回长度;
③重排序方法:reverse()反转数组;sort()可接受一个参数表示排序的方法,默认是字典序;
④操作方法:concat()创建数组副本,将参数添加到副本末尾,返回新数组;slice()接受一个或者两个参数,表示新数组的起始,左闭右开,只有一个参数时,到数组的末尾结束;splice()参数为(起始位置,删除项数,起始位置插入项);
⑤位置方法:indexOf(),lastIndexOf() 找到就返回在数组中的位置,没有就返回-1;
⑥归并方法:reduce(),reduceRight();
⑦迭代方法:every(),filter(),forEach(),map(),some();
4.Array对象的length属性,对于Array实例,若下标超过length,则为未定义的项,值为undefined。注意length属性不是只读的,通过设置length属性可以从数组的末尾添加或者移除项;
5.Date类型,使用自UTC,1970年1月1日起经过的毫秒数来保存日期;
var date= new Date();
6.RegExp类型:var expression = /pattern/flag ;
pattern:任何简单或者复杂的正则表达式;
flag:g全局模式;i不区分大小写;m多行模式;
使用构造函数:var pattern = new RegExp("pattern","flag");
7.RegExp的实例方法exec():接受一个参数,即要应用模式的字符串,然后返回一个数组或者当没有匹配项时返回null。
返回的数组包含index和input属性,index指示匹配位置,input指示输入的字符串,数组的第一项是匹配的字符串,其他项
是与捕获数组匹配的字符串。捕获组:用括号括起来的正则表达式的子表达式。
8.函数定义的方法:函数声明、函数表达式和构造函数;函数名实际上是一个指向函数对象的指针,函数没有重载;
9.解析器会率先读取函数声明,并使其在执行任何代码之前可用,而函数表达式则必须等到解析器执行到它所在的代码时才会被解释执行;
10.函数名本身就是变量,所以函数也可以作为值来使用,可以作为参数传递也可以作为返回值;
11.函数内部的一些属性:
arguments:保存函数参数的类数组对象,有一个callee属性,该属性是一个指针,指向拥有这个arguments的函数;
this:this引用的是函数据以执行的环境对象;
caller:保存着调用当前函数的函数引用;
12.函数属性和方法:
length:表示函数希望接收的命名参数的个数;
prototype:保存他们所有实例方法的真正所在,该属性不可枚举;
apply():接收两个参数,第一个是在其中运行函数的作用域,第二个是参数数组;
call():接收多个参数,第一个是在其中运行函数的作用域,其余是具体的参数;
bind():创建一个函数实例,其this值会被绑定到传递给bind的值;
说明:apply 、 call 、bind 三者都是用来改变函数的this对象的指向的;
apply 、 call 、bind 三者第一个参数都是this要指向的对象,也就是想指定的上下文;
apply 、 call 、bind 三者都可以利用后续参数传参;
bind 是返回对应函数,便于稍后调用;apply 、call 则是立即调用 。
2.判断是否是数组:isArray();
3.数组的一些方法:
①栈方法:push()接收任意数量参数,逐个添加到数组的尾部,返回长度;pop()从数组的末尾移除最后一项,返回移除项;
②队列方法:shift()移除数组的第一项,返回移除项;unshift()在数组前端添加任意项,返回长度;
③重排序方法:reverse()反转数组;sort()可接受一个参数表示排序的方法,默认是字典序;
④操作方法:concat()创建数组副本,将参数添加到副本末尾,返回新数组;slice()接受一个或者两个参数,表示新数组的起始,左闭右开,只有一个参数时,到数组的末尾结束;splice()参数为(起始位置,删除项数,起始位置插入项);
⑤位置方法:indexOf(),lastIndexOf() 找到就返回在数组中的位置,没有就返回-1;
⑥归并方法:reduce(),reduceRight();
⑦迭代方法:every(),filter(),forEach(),map(),some();
4.Array对象的length属性,对于Array实例,若下标超过length,则为未定义的项,值为undefined。注意length属性不是只读的,通过设置length属性可以从数组的末尾添加或者移除项;
5.Date类型,使用自UTC,1970年1月1日起经过的毫秒数来保存日期;
var date= new Date();
6.RegExp类型:var expression = /pattern/flag ;
pattern:任何简单或者复杂的正则表达式;
flag:g全局模式;i不区分大小写;m多行模式;
使用构造函数:var pattern = new RegExp("pattern","flag");
7.RegExp的实例方法exec():接受一个参数,即要应用模式的字符串,然后返回一个数组或者当没有匹配项时返回null。
返回的数组包含index和input属性,index指示匹配位置,input指示输入的字符串,数组的第一项是匹配的字符串,其他项
是与捕获数组匹配的字符串。捕获组:用括号括起来的正则表达式的子表达式。
8.函数定义的方法:函数声明、函数表达式和构造函数;函数名实际上是一个指向函数对象的指针,函数没有重载;
9.解析器会率先读取函数声明,并使其在执行任何代码之前可用,而函数表达式则必须等到解析器执行到它所在的代码时才会被解释执行;
10.函数名本身就是变量,所以函数也可以作为值来使用,可以作为参数传递也可以作为返回值;
11.函数内部的一些属性:
arguments:保存函数参数的类数组对象,有一个callee属性,该属性是一个指针,指向拥有这个arguments的函数;
this:this引用的是函数据以执行的环境对象;
caller:保存着调用当前函数的函数引用;
12.函数属性和方法:
length:表示函数希望接收的命名参数的个数;
prototype:保存他们所有实例方法的真正所在,该属性不可枚举;
apply():接收两个参数,第一个是在其中运行函数的作用域,第二个是参数数组;
call():接收多个参数,第一个是在其中运行函数的作用域,其余是具体的参数;
bind():创建一个函数实例,其this值会被绑定到传递给bind的值;
说明:apply 、 call 、bind 三者都是用来改变函数的this对象的指向的;
apply 、 call 、bind 三者第一个参数都是this要指向的对象,也就是想指定的上下文;
apply 、 call 、bind 三者都可以利用后续参数传参;
bind 是返回对应函数,便于稍后调用;apply 、call 则是立即调用 。
相关文章推荐
- Javascript学习笔记2 继承 原型链
- 20150727 Javascript进阶学习笔记(上)
- JavaScript学习笔记
- JavaScript 学习笔记八 继承与引用
- javascript Array Methods(学习笔记)
- 学习javascript语言精粹的笔记
- (3)JavaScript学习笔记 - 函数、对象、数组
- javascript 学习笔记(八)javascript对象
- 【JS学习笔记】08 JavaScript 对象
- JavaScript学习笔记(二)——从简单开始学起
- JavaScript 学习笔记一基础入门
- JavaScript基础知识学习笔记
- JavaScript学习笔记(二十四) 模块创建构造函数
- Javascript 学习 笔记三
- (4)JavaScript学习笔记 - 数据类型和值(续)
- JavaScript 学习笔记
- (5)JavaScript学习笔记 - 变量
- 客户端Javascript学习笔记-----脚本化文档
- 【学习笔记】JavaScript编码规范-比较运算符&相等