JavaScript字符串类型

1. 基础使用

Js中的字符串可以使用单引号也可以使用双引号,单引号可以嵌套双引号,双引号也可以嵌套单引号

var str = "hello 'tom'";  //hello 'tom'
var str1 = 'hello "tom"';  //hello "tom"

字符串不可以换行,如果非要使用换行要在行末加上\反斜杠后面跟行换行,这种只是写法上换行实际结果还是一行

var str = "a sample \
string";

2. 转义

  • \0 null
  • \n 换行符
  • \b 后退键
  • \t 制表符
  • \r 回车符
  • \v 垂直制表符
  • \f 换页符
  • ’ 单引号
  • " 双引号
  • \ 反斜杠
console.log('1\n2');
// 1
// 2

如果反斜杠后面跟的是非转移字符则直接省略反斜杠

console.log('1\a2'); //1a2

在字符串中显示反斜杠要对反斜本身进行转义

console.log('1\\a2'); //1\a2

除了上述的转移字符,js支持使用unicode编码表示字符

var f\u006F\u006F = 'abc';
foo // "abc"

3. 字符串和数组

字符串可以看作是类型为字符的数组,它具有数组的length属性,还可以使用方括号运算符

var str = 'apple';
console.log(str[0],str.length); //a,5

通过数组的方式只能访问字符串不能进行操作

delete str[1];
str[2] = 'q';
str.length = 10;
console.log(str[1],str[2],str.length); //p,p,5

4. Base64

有时,文本里面包含一些不可打印的符号,比如 ASCII 码0到31的符号都无法打印出来,这时可以使用 Base64 编码,将它们转成可以打印的字符。另一个场景是,有时需要以文本格式传递二进制数据,那么也可以使用 Base64 编码。
Base64是一种编码方式,可以将任意值转成A-Z、a-z、+和\这64个字符组成的可以打印的字符,它的目的不是为了加密而是为了不出现特殊字符,简化程序的处理。类似的还有base32,base16。

Javascript提供了任意字符和Base64相互转换的方法:

  • btoa(); 任意字符转base64
  • atob(); base64转回原来的值
var str = 'hello base64';
console.log(btoa(str));            //aGVsbG8gYmFzZTY0
console.log(atob('aGVsbG8gYmFzZTY0')); //hello base64

这两个只支持传入ASCII的字符,如果要传入unicode字符,要将base64先转码再使用btoa方法

var hello = '你好';
console.log(btoa(encodeURIComponent(hello))); //JUU0JUJEJUEwJUU1JUE1JUJE
console.log(decodeURIComponent( atob('JUU0JUJEJUEwJUU1JUE1JUJE'))); //你好
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值