学前知识
- 二进制:进制是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。
- 十进制:满十进一,满二十进二,以此类推,按权展开,第一位权为10^0,第二位10^1……以此类推,第N位10^(N-1),该数的数值等于每位位的数值*该位对应的权值之和。
十六进制:在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数字。
JavaScript数据类型(四基两空一对象)
数字number:
- js的数字储存形式是64位浮点数,浮点就是浮动的点,意思就是小数点可以随意调整,例如123.456可表示为1.23456e^2。
- 64位存储一个number,符号占一位,指数占11位,有限数字占52位(开头1省略)。
- 十五有效数字都可以精确表示,16位有效数字如果小于90开头则也能精确表示。
- 字符串String:
- 写法:单引号’你好’ 双引号’你好’ 反引号
你好
(注意单引号不属于字符串)。不同引号可以包含使用,被包含的引号会成为字符串的一部分并显示出来。``javascript var a = "it's"//输出it's var a =
it’s`//输出it’s var a = ‘it”s’//输出it”s
- 写法:单引号’你好’ 双引号’你好’ 反引号
//转义:用另一种表示你想要的东西
- 字符串的属性:
```javascript
//字符串的长度string.leghth
var a = '1234'
a.leghth //3
''.leghth//0
' '.leghth//1 空格占一个字节
//通过下标取字符串某一字符
let a = '1234'
a[0] = '1'//注意index从0开始
//window.btoa转码
//windowa.atob解码
布尔Boolean:只有两个值true或false。
//五个falsy值,除了这五个值,其余任何值为真
//undeifined
//0
//''
//null
//NaN
符号symbol
- 空undefined和空null
- 当变量声明但是未赋值时,那么默认值就是undefined而不是null。
- 如果一个函数,没有写return,那么默认return undefined,而不是null。
- 变量声明
指定值同时也指定了类型,但是值和类型都可以随意变化的。
var a = 1//过时的,不好用。
let a = 1//let是新的
const a = 1//声明时必须赋值,且不能更改,通常设置常用变量
a = 1//此种方式是错误的,一般仅仅是赋值
- var
- let:遵循块作用域,使用范围不能超出{}代码块,超出则声明无效。不能重复声明。可以赋值,也可以赋值。必须先声明然后再使用,否则会报错,全局声明的let变量,不会变成window属性,而var会。for配合let使用有奇效。
- const :和let声明基本一样,但是声明赋值过后不可更改。
- 类型转换 ```javascript //String转number let a = ‘123’ Number(a) //123 parselnt(a)/parseFloat(a) //123 a - 0 //123
//number转String let a = 123 Sting(a) //‘123’ a + ‘’ //‘123’
//x转bool Boolean(x) !!x
//x转String String(x) x.toString()//当x为整数时,需要有两个点,例如2..toString。
```