js高级程序设计第3版(5章:引用类型)

1.Object类型

创建方式:new Object()   、var person={name:''}

访问对象的属性方法:[]访问可以通过变量来访问属性,通常除非使用变量来访问属性,建议使用.

2.Array类型

检测数组的方法:instanceof    Array.isArray()

转换方法:alert()中接收字符串参数,会自动转换成string

join(',') 内部将数组的每一项进行toString()转换。

toString()与toLocalString()的区别

  • 对于数字的位数大于4有区别,逗号。   
  • 对于时间  输出 2021/2/5 上午11:25:39"

栈方法:后进先出  push() pop()

队列方法:先进先出   shift() unshift()

重排序方法:reverse() sort()

3.Date类型

Date.parse() 接收一个表示日期的字符串参数,返回毫秒数

Date.UTC()接收不一样的参数

4.RegExp类型

方法:exec() 接收一个参数,返回一个数组,index表示匹配项在字符串中的位置,input表示应用的正则表达式的字符串。

          test()接收一个参数,返回true或者false

5.Function类型

函数名是指向函数对象的指针,一个函数可能有多个函数名。

没有重载:本质是创建第二个函数时,实际上覆盖了第一个函数的变量。

作为值的函数:第一个参数为函数,第二个为传入的函数里的参数。

函数内部的属性:定义阶乘函数,定义阶乘函数,使用到arguments.callee        this引用的是函数据以执行的环境对象。

argument.caller调用当前函数的函数引用。 arguments.callee.caller

属性:length表示函数希望接收的命名参数的个数

6.基本包装类型 Boolean Number String

每次在创建基本数据类型时,后台会自动创建基本包装类型,所以基本数据类型可以调用包含的方法。

区别:对象的生存期,在创建基本包装类型的对象,则存在于一行代码的执行瞬间,然后立即销毁。不能给基本类型添加属性和方法

 

 布尔表达式中的所有对象都会被转换成true

includes() 方法用于判断一个字符串是否包含在另一个字符串中,根据情况返回 true 或 false。

concat()可接收多个参数拼接,slice(),substr(),substring()不会修改字符串本身的值 

match()只接受一个参数

search()返回字符串第一次出现的位置

replace()替换其中的参数 

7.单体内置对象

Global对象

此对象是不存在的,全局作用域中定义的属性和函数,都是Global对象的属性。

encodeURI():用于整个URI进行编码,属于URI的特殊字符进行编码。例如冒号、问号等     =========decodeURI()

encodeURIComponent()主要用于对URI其中的一段进行编码,对任何非标准字符进行编码  =========decodeURIComponent()

eval():是一个完整的函数解析器, 括号里边接收字符串。不会存在变量提升,只有到该位置时才会执行。

对象的属性:undefined NaN Infinity Error等构造函数

window对象

Math对象

posted @ 2021-02-05 15:40  yaqian96  阅读(58)  评论(0)    收藏  举报