前言

javascript没有表示单个字符的字符型,只有字符串String类型,字符型相当于仅包含一个字符的字符串

字符串String是javascript基本数据类型,同时javascript也支持String对象,它是一个原始值的包装对象。在需要时,javascript会自动在原始形式和对象形式之间转换。本文将介绍字符串String原始类型及String包装对象

定义

字符串String类型是由引号括起来的一组由16位Unicode字符组成的字符序列

字符串类型常被用于表示文本数据,此时字符串中的每个元素都被视为一个代码点。每个元素都被认为占有此序列中的一个位置,用非负数值索引这些位置。首字符从位置0开始,第二个字符在位置1,依次类推

字符串的长度即其中元素的个数。空字符串长度为零,因而不包含任何元素

Unicode编码

javascript采用UTF-16编码的Unicode字符集,javascript字符串是由一组无符号的16位值组成的序列。最常用的Unicode字符都是通过16位的内码表示,并代表字符串中的单个字符

[注意]最常用的Unicode字符属于“基本多语种平面”(Basic Multilingual Plane BMP),也称为“零断面”(plan 0), 是Unicode中的一个编码区段,编码介于U+0000——U+FFFF之间

所有字符都可以写成'\uxxxx'的形式,其中xxxx代表该字符的Unicode编码。比如,\u00A9代表版权符号

var s = '\u00A9';
s // "©"

那些不能表示为16位的Unicode字符(U+10000到U+10FFFF之间的字符,长度为32位(即4个字节),而且前两个字节在0xD800到0xDBFF之间,后两个字节在0xDC00到0xDFFF之间),则遵循UTF-16编码规则——用两个16位值组成的一个序列(亦称做“代理项对”)表示。这意味着一个长度为2的javascript字符串(两个16位值)有可能表示一个Unicode字符

举例来说,U+1D306对应的字符"

JavaScript数据类型 String字符串类型的更多相关文章

  1. JavaScript数据类型 String字符串类型的属性和方法

    属性 字符串String类型的每个实例都有一个length属性,表示字符串中的字符个数.由于字符串是不可变的,所以字符串的长度也不可变 字符串的length属性不会在for/in循环中枚举,也不能通过 ...

  2. 数据类型总结——String(字符串类型)

    相关文章 简书原文:https://www.jianshu.com/p/546a755c3eb6 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...

  3. redis:string字符串类型的操作

    1. string字符串类型的操作: 1.1. set 设置单个值 语法:set key value [EX seconds] [PX milliseconds] [NX|XX] 注: EX seco ...

  4. Python笔记_第一篇_面向过程_第一部分_5.Python数据类型之字符串类型(string)

    关于Python的字符串处理也如其他语言一样属于重点中的重点,主要是牵扯到的函数和内容较为多和乱一些.关于什么是字符串,Python中的定义是:以单引号或者双引号括起来的任意文本. 1.   字符串的 ...

  5. JavaScript数据类型之文本类型

    引言 字符串(string)是一组由16位值组成的不可变的有序序列,每个字符通常来自于Unicode字符集.JavaScript通过字符串类型来表示文本.字符串的长度(length)是其所含16位值的 ...

  6. ES索引Index相关操作&ES数据类型、字符串类型text和keyword区别

    1.查看索引以及删除之前的测试索引 1. 查看索引以及索引数量信息 liqiang@root MINGW64 ~/Desktop $ curl -X GET http://127.0.0.1:9200 ...

  7. 从零开始学习前端JAVASCRIPT — 3、JavaScript基础string字符串介绍

    1:字符串 JS中的任何数据类型都可以当作对象来看.所以string既是基本数据类型,又是对象. 2:声明字符串 基本数据类型:var sStr = '字符串'; 对象的方法:var oStr = n ...

  8. 什么 是JavaScript中的字符串类型之间的转换问题详解? 部分4

    字符串类型 单双引号都可以!建议使用单引号!(本人建议:个人觉得单个字符串更利于网页优化@特别地方特别处理!); 判断字符串的长度获取方式:变量名.length html中转义符: < < ...

  9. 数据类型之字符串类型与Number类型

    ㈠字符串类型 ⑴在JS中字符串需要使用引号引起来 ⑵使用双引号或单引号都可以,但是不要混着用 ⑶引号不能嵌套,双引号不能放双引号,单引号不能放单引号 ⑷在字符串中,可以使用“\”作为转义字符,当表示一 ...

随机推荐

  1. .NET ORM框架之NHibernate

    这段时间一直使用NHibernate,今天抽空总结一下. 1.什么是NHibernate? NHibernate是一个面向.NET环境的对象/关系数据库映射工具.对象/关系数据库映射(object/r ...

  2. 大数据平台Lambda架构详解

    Lambda架构由Storm的作者Nathan Marz提出.旨在设计出一个能满足.实时大数据系统关键特性的架构,具有高容错.低延时和可扩展等特. Lambda架构整合离线计算和实时计算,融合不可变( ...

  3. supervisor management kafka zookeeper

    # cat kafka.ini [program:kafka] command=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/ ...

  4. JavaScript-创建日志调试对象(面向对象实例)

    参考自http://www.2cto.com/kf/201312/261990.html IC.js文件 自己封装的js类库 /** * * @authors Your Name (you@examp ...

  5. echarts之legend-改变图例的图标为自定义图片

    legend:{ show:true, orient:'horizontal', borderColor:'#df3434', borderWidth:2, data:[ { name:'蒸发量', ...

  6. Java线程状态转换

    前言:对于Java线程状态方面的知识点,笔者总感觉朦朦胧胧,趁着最近整理资料,将Java线程状态方面的知识点总结归纳,以便加深记忆. 1.Java线程状态值 在Thread类源码中通过枚举为线程定义了 ...

  7. springMVC实现登陆

    页面打开跳转到登陆页面 登陆成功跳转到成功页面 登陆失败再次返回登录页面,并增加提示信息 1.首页跳转到登陆页面 Tomcat服务器启动时默认加载WEB-INF下的index.jsp,可以通过修改xm ...

  8. .NET CORE微服务中CONSUL的相关使用

    .NET CORE微服务中CONSUL的相关使用 1.consul在微服务中的作用 consul主要做三件事:1.提供服务到ip的注册 2.提供ip到服务地址的列表查询 3.对提供服务方做健康检查(定 ...

  9. Spring Boot:The field file exceeds its maximum permitted size of 1048576 bytes

    错误信息:The field file exceeds its maximum permitted size of 1048576 bytes原因是因为SpringBoot内嵌tomcat默认所能上传 ...

  10. multiset的erase()操作中出现跳过元素的问题

    昨天,我写了一个multiset去重,让tt指向it的后面第一个元素,若重复则删除这2个元素,并令it=tt,it++:来使it指向tt的下一个元素(我想指向原it的后面第2个元素,并认为tt的下一个 ...