美文网首页
引用类型

引用类型

作者: A郑家庆 | 来源:发表于2019-01-25 12:10 被阅读0次

变量提升和函数声明提升

  函数声明提升就是把函数声明提升到函数声明所在作用域中(或者说一个函数体内)的顶端,变量提升只是提升变量的声明到所在作用域的顶端不会把值一起提升上来。
  注:随便函数声明和变量都会提升,但是函数声明提升是提升整个函数体,变量提升只是提升变量声明,不会提升值,并且函数声明比变量提升优先级要高,也就是函数声明提升要在变量提升上面

基本包装类型

  每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而让我们能够调用一些方法来操作这些数据。
  引用类型和基本包装类型的主要区别就是对象的生存期。使用new操作符创建的引用类型的实例,在执行流离开当前作用域 之前都一直保存在内存中。而自动创建的基本包装类型的对象,则存在于一行代码的执行瞬间,然后立即被销毁。这意味着我们不能在运行时为基本类型值添加属性和方法。

call()、apply()

  每个函数都包含两个非继承而来的方法:apply()和call()。这两个方法的用途都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值。

var o = { color: 'blue' }
function sayColor() {
    console.log(this.color)
}
sayColor.call(o)            // blue
sayColor.call(o)等同于
var o = {
    color: 'blue',
     sayColor: function () {
       console.log(this.color)
   }
}

通过上面代码可以看出call()和apply()方法就是改变函数的运行环境。

RegExp类型

正则表达式的匹配模式支持下列3个标志:

  • g:表示全局模式
  • i:表示不区分大小写
  • m:表示多行模式

正则表达式中的元字符包括:

  • ():标记一个子表达式的开始和结束位置
  • []:字符集合。匹配所包含的任意一个字符
  • {}:n 是一个非负整数。匹配确定的 n 次
  • \:将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符
  • ^:匹配输入字符串的开始位置
  • $:匹配输入字符串的结束位置
  • x|y:匹配 x 或 y
  • ?:匹配前面的子表达式零次或一次
  • *:匹配前面的子表达式零次或多次
  • +:匹配前面的子表达式一次或多次
  • .:匹配除换行符(\n、\r)之外的任何单个字符
  • \d:匹配一个数字字符。等价于 [0-9]
  • \D:匹配一个非数字字符。等价于 [^0-9]
  • \n:匹配一个换行符。等价于 \x0a 和 \cJ
  • \r:匹配一个回车符。等价于 \x0d 和 \cM
  • \s:匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]
  • \S:匹配任何非空白字符。等价于 [^ \f\n\r\t\v]
  • \w:匹配字母、数字、下划线。等价于'[A-Za-z0-9_]'
  • \W:匹配非字母、数字、下划线。等价于 '[^A-Za-z0-9_]'
贪婪和非贪婪匹配

在贪婪量词的后面加多一个?就变成了惰性量词,它的匹配过程相反,是从前面第一个开始,不匹配则加一个,如此循环直到字符串结束。

相关文章

  • JavaScript基础三

    1、引用类型有哪些?非引用类型有哪些 引用类型:Object非引用类型:number string null ...

  • 引用类型与对象拷贝

    1.引用类型有哪些?非引用类型有哪些 引用类型: 对象 object 数组 函数 正则非引用类型...

  • 引用类型对象拷贝思考

    1、引用类型有哪些?非引用类型有哪些 非引用类型 String 类型、Null 类型、Number 类型、Unde...

  • js-引用类型对象拷贝

    1.引用类型; 2.过滤数组; 3.深浅拷贝方法; 1.引用类型有哪些?非引用类型有哪些 引用类型:引用类型(Ob...

  • JavaScript引用类型与对象拷贝

    引用类型有哪些?非引用类型有哪些 引用类型:对象、数组、函数、正则非引用类型:string、number、bool...

  • 进阶任务-4

    引用类型有哪些?非引用类型有哪些2.如下代码输出什么?为什么? 引用类型有哪些,非引用类型有哪些引用类型:数组,对...

  • 面向对象学习笔记

    - 数组其实就是一种引用类型。 int是基本类型,int[]是引用类型 数组是引用类型,引用类型和基本类型的区别在...

  • 深拷贝与浅拷贝

    一.引用类型与值类型 我们都知道,js有两种基本类型,引用类型与值类型。引用类型的“=”只是拷贝了引用,而基本类型...

  • 引用类型对象拷贝

    1.引用类型有哪些?非引用类型有哪些 引用类型:对象、数组、正则、函数非引用类型:number、string、bo...

  • 一.C#中值类型与引用类型

    总结:值类型直接存储其值,引用类型存储对值的引用,值类型存在堆栈上,引用类型存储在托管堆上,值类型转为引用类型叫做...

网友评论

      本文标题:引用类型

      本文链接:https://www.haomeiwen.com/subject/nqcmjqtx.html