1.字符串的介绍以及声明
字符串是javaScript的一种数据类型 用"" '' 括起来的就是字符串
字符串定义
第一种定义方式 常用一种
var 变量 = 字符串值
var str = 'str'
var str1 = "hello"
console.log(str)
console.log(str1)
2.使用new 关键词定义
var object = new string(true)返回的是一个字符串
通过直接赋值的形式是基本数据类型 通过new关键词是对象类型(引用数据类型)
引用数据类型的2个对象和对应的2个引用都不一样
使用直接赋值 字符串的形式给定当前变量为基本数据类型
使用new string()进行定义的形式 构建是引用类型的对象
new string()里面的参数可以是任意类型 最后都会用tostring方法转为string类型
如果不使用new关键词 等于没有开启新的内容来存储引用也就是当前的类型不是对象类型
而使用new关键词 等于开辟了一个新的内存空间存储 那么类型就是对象类型
var str = new string('A')
var str1 = string('A')
var str2 = 'A'
console.log(typeof str); // object
console.log(typeof str1); // string
console.log(typeof str2); // string
console.log(str1 == str2); // true
3.字符串属性
数组是一个容器 字符串也是一个容器
length属性 计算字符串的长度 一个字符串为一个位置
也可以通过下标获取对应的字符 下标也是从0开始到length-1结束
数组是可变 字符串是不可变的
数组的length属性是可以修改的 字符串的length只能获取不能修改
字符串增删改查方法 不能操作原本的字符串 只能返回一个新的字符串
字符串不能改 因为他是常量 不能修改的量 也不能通过length改变字符串的长度 不能通过下标赋值来改变字符串
var a = 'hello'
a = 'world'
var b = 'hello'
console.log(b) // hello
b[1] = 0
console.log(b) // hello
4.字符串的常用方法
通过下标查询对应的字符 相当于字符串的下标获取
var str = 'abc'
console.log(str[0])获取a
通过charAt方法来获取 返回的是字符串 根据下标来获取字符串
console.log(str.charAt(0));//str.chearAt(0) 等同于str[0]
indexof 根据字符串来返回对应的第一次出现的下标 找不到-1
var str = 'abca'
var str1 = 'abca'
console.log(str.indexof('a')); //0
console.log(str.indexof('a',1)) //3
lastIndexof 根据字符串返回第一个出现的下标 从后往前找
console.log(str1.indexof('a')); //3
console.log(str1.indexof('a',1)); //0
获取ascii码 获取对应下标位置的字符的ascii码
console.log(str.charCodeAt(0)) //97 获取下标为0位置的字符a的ascii码
console.log(str.charCodeAt(1)) //98 获取下标为1位置的字符b的ascii码
fromCharCode 根据ascii转换为对应的字符串 ascii码解码为字符串
var codeStr = string.formCharCode(100)
console.log(codeStr); d