美文网首页
基本引用类型

基本引用类型

作者: Viewwei | 来源:发表于2022-05-17 14:14 被阅读0次
概论

引用值是某个特定引用类型的实例。引用类型是把数据和功能组合在一起的结构。经常被人称为类。但是在JavaScript中缺少传递面向对象编程语言所具备的某些基本结构,包括类和接口。引用类型有时候也成为对象定义。对象称作为某个特定引用类型的实例。新对象通过使用new操作符跟一个构造函数来创造

Date

Date是JavaScript自带的一个日期类。要创建一个日期类,需要使用new来创建。不给Date传递参数的时候创建的是当前时间的日期。ECMSScript为此还提供两个辅助函数Date.parse()和Date.UTC()
Date类型还重写了toLocaleString()、toString()和valueOf()方法

RegExp

RegExp类型支持正则表达式。正则表达式使用的是Perl的简洁语法来创建。正则表达式可以带零个或者多个flags(标记)用于控制正则表达式的行为

  • g 全局模式
  • i 不区分大小写
  • m 多行模式
  • y 粘附模式
  • u Unicode 模式
  • s dotAll 模式
    RegExp实例的主要方法式exec(),主要用于捕获组使用,这个方法只接收一个参数,即要应用模式的字符串。如果找到匹配项,则返回包含第一个匹配项的数据,如果没有找到,则返回null,虽然返回项是数组,但包含两个额外的属性:index和input.index表示匹配模型的起始位置。input要查找的字符串

原始包装类型

为了方便操作原始值,ECMASCript提供三种特殊的引用类型:Boolean、Number和String。每当用到某个原始值的属性和方法的时候,后台都会相应的包装类型的对象,从而暴露操作原始值的各种方法

let s1 = "a"
let s2 = s1.substring(0)

在这里s1是包含字符串的变量,它是一个原始值,第二行紧接着在s1上调用substring()方法,并把结果保存到s2中。我们知道原始值本身不是对象,因此在逻辑上是不存在方法和属性的,而实际上这个例子又确实按照预期运行了。具体原因是在第二行访问s1的时候,是以读模式访问,也就是从内存访问变量保存的值,在读模式访问字符串的任何时候,后台都会先创建一个String类型的实例,调用实例上的方法和销毁实例。所有原始才能够正常的调用属性或者方法。在此需要注意的是,用new创建的是对象,直接构造函数实例的是转换方法,本质上还是原始值

const value = "25"
const number = Number(value) // number
const number1 = new Number(value) // object

Number的实例对象又toFixed()函数,toFiexd()函数可以将数值转化成带指定小数点的字符串。isInteger()函数可以判断一个数值是不是整数
String可以通知chartAt()取得指定索引的字符,通过fromCharCode函数把指定编码链接成字符串

String的方法

String的方法一般分为字符串操作方法、字符串位置方法、字符串包含方法、trim方法、repeat方法、字符串迭代与解构、字符串模式匹配方法

字符串操作方法

字符串操作首先用到的是concat()方法,用于将一个或者多个字符串拼接成一个新的字符串。ES还提供给3个从字符串提取字符串的方法,分为为slice、substr和substring。这三个方法都返回调用他们的字符串的一个子字符串,而且都接收一个或者两个参数。第一个蚕食表示字符串开始的位置,第二个参数表示字符串结束的位置,对slice和substring而言,第二个参数表示字符串结束的位置,对substr而言,第二个参数表示字符串的长度。如果第二个参数为空,则表示从开始位置一直取到最后。三个方法在参数为负数的时候,表现的就差别很大了,slice()方法将所有的负数都当成字符串长度加上负数值,substr方法将第一个参数为负数的值加上字符串长度,第二个负数转换成0,substring()则是将所有的负参数转化成0

字符串位置方法

有两个方法用于在字符串中定位子字符串:indexOf()和lastIndexOf()。这两个方法从字符串中搜索字符串,并返回位置。两者的区别在于,indexOf()方法从字符串的头部开始查找,lastIndexOf()从字符串尾部查找字符串。这两个字符串都可以接收第二个参数,表示字符串搜索的位置。

字符串包含方法

在ES6增加了3个用于判断字符串是否包含另外一个字符串的方法,startsWith()、endsWith()和includes()这些方法都会从字符串中搜索传入的字符串,并返回一个是否包含的布尔值,startWith()检查开始于索引0的匹配项,endsWith()检查开始于索引(string.length-substring.length)的匹配项,而includes()检查整个字符串
startsWith()和endsWith()方法都接收可选的第二个参数,表示开始搜索的位置。

trim()

trim()表示删除前后的空格。trimLeft()删除前空格trimRight()删除后空格

repeat

repeat()方法接收一个整数参数表示将字符串复制多少次

字符串迭代方法

字符串的原型上暴露了一个@@iterator方法,来表示迭代字符串的每个字符。可以手动使用迭代器

let message = “abc”
for(const c of messgae) {
  
}
const a = [...message]
字符串大小写转换

大小写转换包括4个方法,tolowerCase(),toLocaleLowerCase()、toUpperCase()

字符串模式匹配

match方法和RegExp对象的exec()方法相同。match()方法接收一个参数,可以是一个正则表达式,也可以是一个RegExp对象

相关文章

  • 执行环境、作用域链

    理解基本类型和引用类型 基本类型 点击浏览JS的基本数据类型 引用类型 1.什么是引用类型引用类型的值是保存在内存...

  • js 对象包装07-22

    基本类型和引用类型。 基本类型:Undefined,Null,Boolean,Number,String引用类型:...

  • 面向对象学习笔记

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

  • 深拷贝与浅拷贝

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

  • JS变量,作用域,内存问题

    基本类型和引用类型 js中变量类型分为两大类。基本类型和引用类型。基本类型指值直接保存在变量本地的类型。引用类型变...

  • 基本引用类型

    引用类型是把数据和功能组织到一起的结构.虽然从技术上面讲 JavaScript 是一门面向对象的语言,但是 ES ...

  • 基本引用类型

    概论 引用值是某个特定引用类型的实例。引用类型是把数据和功能组合在一起的结构。经常被人称为类。但是在JavaScr...

  • 深入理解JS的数据类型

    js数据类型主要分为基本数据类型和引用数据类型 基本数据类型和引用数据类型的区别:基本数据类型是对值得引用,引用数...

  • 引用类型与对象拷贝

    引用类型有哪些?非引用类型有哪些? JS中的数据类型分为基本类型和引用类型。基本类型:数值(number)、字符串...

  • 基本类型值和引用类型值

    JavaScript变量可以用来保存两种类型的值:基本类型值和引用类型值。 *引用类型包括: 基本类型值和引用类型...

网友评论

      本文标题:基本引用类型

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