JavaScript基本包装类型
2017-08-09 21:01
253 查看
ECMAScript提供的引用类型包括Object、Array、Date、RegExp和Function; ECMAScript还提供3个特殊的引用类型:Boolean、Number、String,称为基本包装类型;
- 基本包装类型与引用类型的生命周期不同,引用类型实例在当前作用域中执行时一直保存在内存中;基本包装类型的实例对象只存在与代码执行的瞬间,之后会立即销毁;
- 使用Object构造函数也可以创建基本包装类型
通过new调用基本包装类型的构造函数和直接使用构造函数名创建的实例是不一样的;
Number包装类有toFixed()/ toExponential()/ toPrecision()方法,均可以接受一个参数用于精度控制;toPrecision()会根据传入参数自动调用toFixed()和toExponential()方法;
String包装类:charAt()/ charCodeAt()/ indexOf()和lastIndexOf()接受第二个可选参数确定起始搜索位置/ trim()(部分浏览器支持trimLeft()和trimRight())/ toLowerCase()与toUpperCase()与/ concat()(接收多个参数)/ slice(start, end)/ substr(start, len)/ substring(start, end),这些方法不会改变原字符串; 针对参数为负的情况,slice()将负值加上字符串长度,substr()对第一个参数为负的值加上字符串长度,第二个参数为负则转为0,substring()会将所有的负参数转为0,并且该方法会将较小的参数作为起始位置;
字符串模式匹配方法:search()不支持全局搜索,参数类型为字符串或者RegExp(); replace()的第一个参数可以使RegExp对象或字符串,第二个参数为一个字符串或者函数, 函数接受3个参数模式匹配项、模式匹配项在字符串中的位置及原始字符串;与search()不同,如果replace()的第一个参数为字符串而不是正则表达式,将会直接进行搜索而不需要像search()一样需要先将字符串通过RegExp()转为正则表达式;replace()方法进行全局替换的唯一办法是使用全局的正则表达式对象; split(delimiter, size),第一个参数为分隔符,第二个为指定分割数组的大小;
参考文献:
《JavaScript高级程序设计》第三版
- 基本包装类型与引用类型的生命周期不同,引用类型实例在当前作用域中执行时一直保存在内存中;基本包装类型的实例对象只存在与代码执行的瞬间,之后会立即销毁;
- 使用Object构造函数也可以创建基本包装类型
通过new调用基本包装类型的构造函数和直接使用构造函数名创建的实例是不一样的;
Number包装类有toFixed()/ toExponential()/ toPrecision()方法,均可以接受一个参数用于精度控制;toPrecision()会根据传入参数自动调用toFixed()和toExponential()方法;
String包装类:charAt()/ charCodeAt()/ indexOf()和lastIndexOf()接受第二个可选参数确定起始搜索位置/ trim()(部分浏览器支持trimLeft()和trimRight())/ toLowerCase()与toUpperCase()与/ concat()(接收多个参数)/ slice(start, end)/ substr(start, len)/ substring(start, end),这些方法不会改变原字符串; 针对参数为负的情况,slice()将负值加上字符串长度,substr()对第一个参数为负的值加上字符串长度,第二个参数为负则转为0,substring()会将所有的负参数转为0,并且该方法会将较小的参数作为起始位置;
字符串模式匹配方法:search()不支持全局搜索,参数类型为字符串或者RegExp(); replace()的第一个参数可以使RegExp对象或字符串,第二个参数为一个字符串或者函数, 函数接受3个参数模式匹配项、模式匹配项在字符串中的位置及原始字符串;与search()不同,如果replace()的第一个参数为字符串而不是正则表达式,将会直接进行搜索而不需要像search()一样需要先将字符串通过RegExp()转为正则表达式;replace()方法进行全局替换的唯一办法是使用全局的正则表达式对象; split(delimiter, size),第一个参数为分隔符,第二个为指定分割数组的大小;
// localCompare()方法 var str = 'cat' str.localeCompare('bat') // -1 str.localeCompare('cat') // 0 str.localeCompare('eat') // 1 // fromCharCode()方法 str.fromCharCode(104,101,108,108,111); //'hello'
参考文献:
《JavaScript高级程序设计》第三版
相关文章推荐
- javascript基本包装类型介绍
- JavaScript--基本包装类型
- [JavaScript]基本包装类型
- javascript笔记之 基本包装类型(Boolean、Number、String)
- javascript笔记--(第十三章)基本包装类型
- Javascript之基本包装类型
- JavaScript高级程序设计之基本包装类型
- JavaScript中基本数据类型和包装类型
- 【JavaScript】Number和String基本包装类型操作方法
- JavaScript类型系统之基本数据类型与包装类型
- JavaScript引用类型——基本包装类型
- JavaScript--基本包装类型+Math对象
- JavaScript-1-3:Date类型、基本包装类型、内置对象
- JavaScript基本包装类型(自动装箱和自动拆箱)(instanceof方法)
- javascript高级程序设计--第五章基本包装类型开始
- Javascript高级程序设计——12.基本包装类型
- JavaScript高级程序设计第五章引用类型——基本包装类型
- JavaScript之--引用类型、作用域、 基本包装类型、内置对象Math
- javascript 引用类型 - 基本包装类型(深入理解基本包装类型和基本类型的区别)
- 你不知道的JavaScript--Item4 基本类型和基本包装类型(引用类型)