JS基本包装类型之三(String)
1. 基本数据类型和基本包装类型
这里以字符串类型来讲解基本数据类型和基本包装类型.
JS中存在基本数据类型String(typeof返回"string"), 也存在基本包装数据类型String(typeof返回"object"). 所以为了便于区分, 我一般将基本数据类型的字符串记做string类型, 正好与typeof操作符的返回值是一样的.
var stringObj = new String("hello world!");
var str = stringObj.toString();
console.log(typeof stringObj);//"object"
console.log(typeof str);//"string"
实际上, 基本包装类型属于引用类型. 所以typeof操作符返回了"object". 每次读取一个基本数据类型的时候, 后台就会临时创建一个对应的基本包装类型的对象. 从而让我们能够调用一些方法来操作这些数据. 举个例子:
var s1 = "some text";
var s2 = s1.substring(2);
console.log(s2);
这个例子中的s1包含一个字符串, 字符串当然是基本数据类型string. 下一行调用该字符串的substring()方法. 当第二行代码访问s1时, 访问过程处于一种读取模式, 即要从内存中读取该字符串的值. 在读取模式中访问字符串时, 后台自动完成了下列处理:
var sTemp = new String(s1); console.log(typeof sTemp);
var s2 =sTemp.substring(2);
sTemp = null;
1) 创建String类型的一个临时实例;
2) 在该临时实例上调用指定的方法;
3) 销毁这个实例.
2. 基本包装类型之String
length属性
stringValue.length
访问字符串中特定字符的方法
stringValue.charAt(index)
stringValue[index]
连接字符串
stringValue.concat(new_string1, new_string2, ...);
加号操作符
提取子字符串
stringValue.slice()
stringValue.substr()
stringValue.substring()
查找子字符串位置
stringValue.indexOf()
stringValue.lastIndexOf()
大小写转换
stringValue.toLowerCase()
stringValue.toUpperCase()
正则匹配
trim()方法
stringValue.trim() 返回字符串副本, 删除前置及后缀的所有空格.
localeCompare()方法
stringValue.localeCompare(new_string) 比较两个字符串
JS基本包装类型之三(String)的更多相关文章
- 理解基本包装类型Number,String,Boolean
在前面我们知道了引用类型是什么了,也就能理解包装类型了.包装对象其实也是一种引用类型,之所以要单独提出来只不过是因为它们可以把原始类型的值变成(包装成)对象,这样它们也就获得了各自类型相应的特殊行为了 ...
- js基本包装类型及Math对象(八)
一.基本包装类型[继承于Object类型]1.Number().String().Boolean()引用数据类型[包装类型]分别对应的基本数据类型为number.string.boolean. 2.当 ...
- js基本包装类型
基本包装类型 3种特殊的引用类型 为了便于操作基本类型值,es还提供了3种特殊的引用类型: Boolean,Number,String. 每当读取一个基本类型值的时候,后台就会创建一个对应的基本包 ...
- js 基本包装类型 String
为了操作基本类型值,ECMAScript提供了三个特殊的引用类型: Boolean , Number , String 举例: var s1 = "some text"; var ...
- 基本数据类型,包装类型,String类型数据之间的转换
java中所有的类都从java.lang.Object类派生而来,在java语言中,除基本数据类型以外,基本数据类型有java类库体统了包装类:Integer类保存整形变量,Boolean类保存布尔变 ...
- JavaScript--我发现,原来你是这样的JS(再说引用类型,基本包装类型与个体内置对象)
一.介绍 本篇是续上一篇的,引用类型的后篇,本篇主要是说基本包装类型和个体内置对象.如果你能收获一些知识,那我很高兴,很满足,哈哈哈,希望大家能愉快看完.如果你想学好一门技术,要不忘初心,方得始终. ...
- JS--我发现,原来你是这样的JS(引用类型不简单[下篇],基本包装类型与个体内置对象)
一.介绍 本篇是续上一篇的,引用类型的下篇,本篇主要是说基本包装类型和个体内置对象.如果你能收获一些知识,那我很高兴,很满足,哈哈哈,希望大家能愉快看完.如果你想学好一门技术,要不忘初心,方得始终. ...
- ECMAScript1.4 对象 | 简单数据类型与复杂数据类型 | 内置对象 | 基本包装类型 | String
对象 函数和对象的区别: 函数:封装代码 对象:封装属性和方法 创建对象的方法: 1,对象字面量{} // 模拟创建一只dog var dog = { // 属性 name: 'puppy', age ...
- JS基础语法---基本包装类型
基本包装类型 普通变量不能直接调用属性或者方法 对象可以直接调用属性和方法 基本包装类型: 本身是基本类型, 但是在执行代码的过程中, 如果这种类型的变量调用了属性或者是方法, 那么这种类型就 ...
随机推荐
- Java的Vector源码阅读
* The {@code Vector} class implements a growable array of * objects. Like an array, it contains comp ...
- 如何批量删除Docker中已经停止的容器
如何批量删除Docker中已经停止的容器 方法一: #显示所有的容器,过滤出Exited状态的容器,取出这些容器的ID, sudo docker ps -a|grep Exited|awk '{p ...
- Mybatis源码分析
MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简 ...
- Mysql性能优化二:索引优化
1 索引的类型 UNIQUE唯一索引 不可以出现相同的值,可以有NULL值. INDEX普通索引 允许出现相同的索引内容. PRIMARY KEY主键索引 不允许出现相同的值,且不能为NULL值,一个 ...
- webpack4.x相关笔记整理
概念 Webpack是一个模块打包机,它可以将我们项目中的所有js.图片.css等资源,根据其入口文件的依赖关系,打包成一个能被浏览器识别的js文件.能够帮助前端开发将打包的过程更智能化和自动化. W ...
- python模块_pcharm导入包的问题
1.添加pip包 2.导入项目需要由内置包(library root)
- SVN上线步骤笔记
项目代码位置: /data/svn/play_out 项目代码目录名称: test SVN创建位置:/data/svn/repos_Websvn线上地址:svn://192.168.1.1/repos ...
- spring学习总结(一)_Ioc基础(上)
最近经历了许许多多的事情,学习荒废了很久.自己的目标成了摆设.现在要奋起直追了.最近发现了张果的博客.应该是一个教师.看了他写的spring系列的博客,写的不错.于是本文的内容参考自他的博客,当然都是 ...
- HTML5 & auto download image
HTML5 & auto download image https://www.sitepoint.com/new-html5-attributes-hyperlinks-download-m ...
- 《ERP系统》客户信用及风控代码
1.风控核心代码: <?php namespace core\models; class SalesCustomersFacade extends \common\models\Base{ /* ...