JS字符串简介:

网页通常存在大量的文本内容,这些文本内容在 JS 中将作为字符串来处理。在 JS 中使用字符串可以在客户端动态处理网页文本内容。在 JS 中,字符串(string)是由单引号或双引号括起来的一组由 16 位 Unicode 字符组成的字符序列,用于表示和处理文本。

Unicode,也称统一码、万国码。由于计算机只能处理 0 和 1 两种数字,所以对需要处理的数据,要将其编码为二进制。最早的计算机使用一个字节(8bit)来表示一个数据,此时的编码称为 ASCII 编码,该编码能表示大小写英文字母、数字和一些符号,共 255 个字符。

对于汉字、日文和韩文等语言则无法使用 ASCII 码来表示。为此,各个国家制定了不同的编码来表示各自的文字。由于这些不同语言的文字编码并没有完全兼容,所以在进行转码时很可能会出现乱码。为了解决这个问题,就需要将不同语言的编码进行统一。为此 Unicode 编码应运而生。

Unicode 将所有语言都统一到一套编码里,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,从而实现跨语言、跨平台的文本转码。Unicode 通常用两个字节来表示一个字符,而原来使用 ASCII 编码的字符则通过将高字节全部补 0 的方式从单字节变成双字节字符。

js字符串的使用方式

(1)字符串直接量

字符串直接量就是直接引用单引号或双引号括起来的一组字符序列:

(2)字符串变量

字符串变量是指值为字符串直接量的变量。例如:var str = "哦耶";变量str为字符串变量

(3)字符串对象

字符串对象通过使用关键字new且包装字符串直接量来创建,创建格式如下: str就是字符串对象

对象既可以有存储数据的属性,又可以包含处理数据的函数。为了便于对字符串直接量和字符串变量的处理,JavaScript 处理它们时,首先会将其转换为一个伪对象(等效于字符串对象),因而字符串直接量和字符串变量也具有属性和方法,这些属性及方法和字符串对象的属性和方法是完全一样。

由于创建字符串对象需要对字符串直接量进行包装,从而有可能拖慢执行速度,并可能产生其他副作用,所以在实际项目中尽量不要对字符串创建对象,而应直接使用字符串直接量进行处理,或先将其存储在一个变量中,然后针对字符串变量进行操作。

注意1:

在JS中,会自动在字符串与字符串对象之间进行转换,因此,任何一个字符串常量都可以看作是一个String对象,其可以直接作为对象使用,只要在字符串变量的后面加 “.” 便可以直接调用String对象的属性和方法。

字符串与String对象的不同在于返回的typeof值,前者返回的是string类型,后者是Object类型。

字符串直接量、字符串变量和字符串对象三者具有相同的属性和方法

注意2:

字符串转义字符( \ )

字符串直接量可以拆分成数行,但每行必须以反斜线(\)结束,反斜线和行结束符都不算是字符串直接量的内容。

在反斜杠(\)后面加符号 . 可以把特殊字符转化为字符串字符。

可以去JavaScript 字符串 详细查看。

---------------------------------------------------------------------------------------------------------------------

JS字符串和数据类型的相互转换

:js转换类型分为两种

隐式类型转换(自动转换) 和 显式类型转换(手动强制转换)

隐式转换

当运算符运算时,运算符两边的数据类型不统一时。编译器会自动将两边数据类型转换为同一种类型在运算。

常见的隐式转换:

-- 逻辑语句的类型转换:当使用if() ,while() ,for() 等判断语句,就会隐式转换为boolean值 true或false.

--逻辑表达式:

! 逻辑非,隐式转换为布尔值,并取反,!!两次逻辑非,隐式转换为布尔值;

|| 和 && 会将非布尔值操作数,隐式转换为布尔值,再判断;

--算数表达式

加减,乘法,除法,求模,隐式转换为 Number;

运算中:

不同类型之间的拼接: 转化为字符串

显示转换

-转换为字符串:toString() 或 String()

-转换为数值:Number()、parseInt()、parseFloat()

-转换为布尔值:Boolean()

-转换为对象:Object()

测试:

toString() 或 String()

Number()

使⽤Number()函数来对string进⾏强制类型转换是最直接的做法。不过,这种做法有⼀个局限性:如果字符串截去开头和结尾的空⽩字符

后,不是纯数字字符串,那么最终返回结果为NaN。⽤Number()函数来进⾏string-to-number转换时,函数只接受10进制字符串,但测试结果表明事实并⾮如此,Number()函数可以接

受”0xff”作为参数并将其转换成数值255。

parseInt()

parseInt()函数可以将字符串转换成⼀个整数,与Number()函数相⽐,parseInt()函数不仅可以解析纯数字字符串,也可以解析以数字开头

的部分数字字符串(⾮数字部分字符串在转换过程中会被去除)。值得注意的是,当parseInt()函数所解析的是浮点数字符串时,取整操作所

使⽤的⽅法为“向下取整”(truncate)。

除了字符串作为第⼀个参数,parseInt()函数还可以接受2到36之间的任意整数作为第⼆个参数,⽤于指定转换过程中的进制数。

parseFloat()

与parseInt()⼀样,parseFloat()也可以解析以数字开头的部分数字字符串(⾮数字部分字符串在转换过程中会被去除)。与parseInt()不同的

是,parseFloat()可以将字符串转换成浮点数;但同时,parseFloat()只接受⼀个参数,且仅能处理10进制字符串。

Boolean()

字符串直接转换为Boolean 全为true

Object()

在用Object()直接转换为String ,会返回一个以键为下标索引 值为字符串的子字符串 ,获取子字符串可以直接 [ 下标 ] 获取:

在对象和字符串之间转换还有一种

注意: JSON.stringify()  和 JSON.parse()

JSON.string() ; 对象转换为字符串

JSON.parse() ; 字符串转换为对象

JSON: JavaScript Object Notation(JavaScript 对象标记法)。

JSON 是一种存储和交换数据的语法。

JSON 是通过 JavaScript 对象标记法书写的文本。

交换数据

当数据在浏览器与服务器之间进行交换时,这些数据只能是文本。

JSON 属于文本,并且我们能够把任何 JavaScript 对象转换为 JSON,然后将 JSON 发送到服务器。

我们也能把从服务器接收到的任何 JSON 转换为 JavaScript 对象。

以这样的方式,我们能够把数据作为 JavaScript 对象来处理,无需复杂的解析和转译。



字符串分割:

string.length;

返回字符串的长度

 string.indexOf();

返回指定字符在字符串中第一次出现的位置的下标索引 ,无则返回 -1

 string.lastIndexOf();

返回指定字符在字符串中最后一次出现的位置的下标

 string.match();

返回指定字符在字符串中第一次出现的位置的详细信息,返回一个集合

 string.replace('参数1','参数2');

替换字符串中的字符,参数(被替换字符,新的字符),不改变原数组。

被替换字符格式可以是Number/Boolean/String,根据字符串中的字符判定

string.search(' / ');

检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。

 string.charAt(索引);

根据索引查找字符串中对应的字符,返回查找的字符。

如果没找到对应下标的字符,返回空字符串。

string.split();

将字符串从指定字符开始分割,返回一个数组,不改变原数组。

也可以不指定字符

string.slice('参数1','参数2') ;  截取字符串

参数1 开始截取的下标 参数2 结束的下标

只有一个参数时,从(参数1)开始截取的下标,一直截取到字符串末尾,返回截取后的字符。

 string.substr('参数1','参数2');

两个参数:1 开始的下标,2.截取几个字符,截取一部分字符,返回截取后的字符。

只有一个参数,从下标为几的位置开始截取,到字符串末尾,返回截取后的字符。

string.substring('参数1','参数2');

两个参数:1索引 2,截取两个下标之间的字符,不包含最后一个下标的字符,返回截取后的字符。

只有一个参数,从下标为几的位置开始截取,到字符串末尾,返回截取后的字符。

string转化大小写

string.toUpperCase( );将英文转换为大写

string.toLowerCase();将英文转换为小写

 也可以遍历字符串

JS字符串数据类型转化和分割的方法相关推荐

  1. JS判断数据类型以及数据过滤空值方法

    JS判断数据类型以及数据过滤空值方法 在我们的项目开发中,经常需要对一个传输中的数据进行滤空处理,过滤 null.undefined.''.[].{}等,还要对字符串进行去除两端的空格操作.为此,我写 ...

  2. js判断数据类型常用的6种方法

    js判断数据类型常用的方法,不论在开发中开始在面试中,都是经常遇到的问题,尤其是在面试时,当面试官问及js判断数据类型的方法时,回答的越多,说明掌握的广度跟深度越多,感觉自己逼格也越高.废话不多说了, ...

  3. js 字符串反转反转的两种方法

    var str = "You don't touch mother fucker think twice."; 第一种方法运用api var strReverse = str.sp ...

  4. JS字符串转换为JSON的四种方法笔记

    1.jQuery插件支持的转换方式: 示例: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象 2.浏览器 ...

  5. js判断数据类型常用的四种方法

    首先说一下js中的数据类型 基本数据类型:String.Number.Boolean.null.undefined.Symbol 引用数据类型:Object  1.typeof const a1 = ...

  6. js字符串转数组,转对象方法

    1.数组转字符串 join var aArr = [1,2,2,2,2,3]var sStr = null;sStr = aArr.join("-");console.log(sS ...

  7. JS字符串类型转换成日期类型的方法

    <script type="text/javascript"> //字符串转日期格式,strDate要转为日期格式的字符串 function getDate(strDa ...

  8. 学习JS基本数据类型与对象的valueOf方法

    https://blog.csdn.net/licheng11403080324/article/details/60128090 https://yq.aliyun.com/articles/399 ...

  9. js字符串转日期格式

    原文地址为: js字符串转日期格式 C#论坛同步地址:http://www.sufeinet.com/thread-1064-1-1.html js字符串转日期格式 ,JavaScript字符串转日期 ...

最新文章

  1. oracle 查看统计情报,Oracle 查看收集统计信息
  2. 主板上来了一个新邻居,CPU 慌了!
  3. numpy.random.rand、numpy.random.randn
  4. php图书信息浏览器,使PHP即时输出结果到浏览器
  5. k8s部署rook-ceph
  6. 零基础自学java的难处_零基础自学Java 在学习中要注意哪些问题
  7. 利用ObjectMapper进行对象与JSON互相转化
  8. Hibernate - Query简易
  9. flex measure
  10. utils 定时器 (一) 多级时间轮
  11. 与计算机相关活动主题,计算机文化节活动策划书
  12. 看完这个故事终于知道区块链是什么了
  13. 华为ensp cloud(云)中没有网卡,缺失网卡,网卡地址错误解决方法
  14. java openoffic linux_CentOS 下安装 OpenOffice4.0
  15. 离线地图for arcgis tpk
  16. 微信公众号的黑色商业链揭秘
  17. MongoDB 杂事
  18. 题目: 输入某年某月某日,判断这一天是这一年的第几天
  19. 微信UI在线聊天源码 聊天系统PHP采用 PHP 编写的聊天软件,简直就是一个完整的迷你版微信
  20. Linux系统文件体系

热门文章

  1. nedc和epa续航里程什么意思_NEDC、WLTP和EPA续航里程哪种最真实?
  2. Linux使用两行命令实现批量创建文件夹(文件目录)
  3. 2019李永乐660题 数学二-题目
  4. fastlane 入门使用
  5. Java数据结构——堆排序
  6. QT5开发之 信号与槽机制
  7. 前端酷炫的n个UI设计效果网站
  8. Subsonic 介绍
  9. Type-C Layout 指南
  10. 【快速开发VoIP】(原理篇)