数据类型
基本数据类型
原始数据类型一共有7个:
- 字符串
- number
- symbol
- bigint
- null
- undefined
- boolean
创建原始值的方式 | 原始值的类型 |
---|---|
直接赋值 | 原始类型 |
new | 对象 |
对象
对象里面是属性和属性值,属性值可以是任何类型,可以是另一个对象或者函数。对象名存储的是对象的引用,而不是对象的属性及属性值。
为什么原始值也可以使用对象的方法?
对象包装器
原始值并不是对象,在原始值使用对象的方法过程如下:
- 新建一个含有其字面值的对象,该对象有可以使用的方法
- 该对象执行对应的函数并返回值
- 执行完毕后,销毁这个临时对象,原始值不受影响
这个临时对象就叫对象包装器,使用完后立即销毁。
基本数据类型详解:
字符串
- 新建字符串
String全局对象是一个用域字符串或者字符序列的构造函数,你可以使用String将值转换为字符串或者直接赋值一个字符串
let i;
i=new String(123)
console.log(typeof i) //object
let j;
j="123"
console.log(typeof j) //string
- 查询字符串长度:
<script>
console.log('cangcang'.length ) //在终端打印出8
</script>
- 从字符串中获取单个字符:
- 使用[]获取指定位置的字符串
str[n]可以返回字符串str中索引为n的字符,如果超出范围则返回undefined.
<script>
console.log('cangcang'[2] ) //在终端打印出n
</script>
- 使用charAt方法获取单个字符:
使用方法与[]类似,但超出范围后返回空字符串
<script>
console.log('cangcang'.charAt(2)) //在终端打印出n
</script>
- 获取单个字符的位置:
<script>
console.log('cangcang'.indexOf("a") ) //在终端打印出1
</script>
- 转换字符大小写:
<script>
console.log('cangcang'.toUpperCase() ) //在终端打印出CANGCANG
</script>
- 转换为小写形式:
<script>
console.log('Cangcang'.toLowerCase() ) //在终端打印出cangcang
</script>
- 去掉字符串的空白
使用tirmLeft去掉左边空白,使用trimRight删除右边空白:
<script>
console.log(' Cangcang'.length ) //在终端打印出10
console.log(' Cangcang'.trim().length ) //在终端打印出8
</script>
- 截取字符串:
使用slice截取:
<script>
console.log('Cangcang'.slice(3) ) //从索引为3的字符开始保留 gcang
console.log('Cangcang'.slice(3,5) ) //从索引为3的字符开始保留到索引为4的字符 gc
</script>
使用substr截取:
<script>
console.log('Cangcang'.substr(3) ) //从索引为3的字符开始保留 gcang
console.log('Cangcang'.substr(3,4) ) //第二个参数为保留字符个数 gcan
</script>
也可以使用substring,用法跟上面两个差不多,只是它不支持负数。
方法 | 选择方式 | 负值参数 |
---|---|---|
slice (start,end) | 从start到end前一个 | 负值表示从后面取 |
substring (start,end) | start到end不包括end | 负值代表0 |
substr (start,lenth) | 从start开始截取lenth个 | 负值代表从后面取 |
-
数字
-
布尔值
-
Null
-
Undefined
-
Symbol