目录
前言
JavaScript是属于HTML和Web的编程语言,JavaScript很容易学习,以下为学习JavaScript做的笔记,方便以后查阅。
主要讲JS命名规范、字面量和变量、标识符、数据类型(String字符串、Number数值、Boolean布尔值、Null和Undefined)、强制类型转换以及其他进制的数字。
一、JS命名规范
- js中严格区分大小写。
- js中每一条语句以;结尾。
注意:如果不写分号,浏览器会自动添加,但是会消耗一些系统资源,而且有些时候,浏览器会加错分号,所以在开发中分号必须写。- js中会忽略多个空格和换行,所以我们可以利用空格和换行对代码进行格式化。
二、字面量和变量
1.字面量
字面量,都是一些不可改变的值 比如:1,2,3,4,5
字面量都是可以直接使用,但是我们一般都不会直接使用字面量
2.变量
- 变量可以用来保存字面量,而且变量的值是可以任意改变的
变量更加方便我们使用,所以在开发中都是通过变量去保存一个字面量,而很少直接使用字面量,可以通过变量对字面量进行描述。
声明变量:在js中使用var关键字来声明一个变量 var a;
为变量赋值: a = 123;
声明和赋值同时进行 var a = 123;
三、标识符
在JS中所有的可以由我们自主命名的都可以称为是标识符
例如:变量名、函数名、属性名都属于标识符
命名一个标识符时需要遵守如下的规则:
1、标识符中可以含有字母、数字、_、$
2、标识符不能以数字开头
3、标识符不能是ES中的关键字或保留字
4、标识符一般都采用驼峰命名法 ==首字母小写,每个单词的开头字母大写,其余字母小写
注意:JS底层保存标识符时实际上是采用Unicode编码,所以理论上讲,所有的utf-8中含有的内容都可以作为标识符。
四、数据类型
数据类型指的就是字面量的类型
在JS中一共有六种数据类型,分别为String(字符串)、Number(数值)、Boolean(布尔值)、Null(空值)、Undefined(未定义)、Object(对象)。
其中String Number Boolean Null Undefined属于基本数据类型
而Object属于引用数据类型
1.String字符串
在JS中字符串需要使用引号引起来,使用双引号或单引号都可以,但是不要混着用,引号不能嵌套,双引号不能放双引号,单引号不能放单引号 例如:var str = "hello";
在字符串中我们可以使用\作为转义字符,当表示一些特殊符号时可以使用\进行转义。
例如:
\" 表示"
\'表示'
\n表示换行
\t 制表符
\\ 表示\
2.Number数值
在JS中所有的数值都是Number类型,包括整数和浮点数(小数)
可以使用一个运算符typeof来检查一个变量的类型 语法:typeof 变量
检查字符串时,会返回string
检查数值型,会返回number
js中可以表示的数字的最大值
Number.MAX_VALUE
Number.MIN _VALUE大于0的最小值
如果使用Number表示的数字超过了最大值,则会返回一个Infinity
Infinity表示正无穷
-Infinity表示负无穷
NaN 是一个特殊的数字,表示Not A Number
使用typeof检查一个NaN也会返回number
在JS中整数的运算基本可以保证精确
如果使用JS进行浮点元素,可能得到一个不精确的结果,所以千万不要使用JS进行对精确度要求比较高的运算
3.Boolean布尔值
布尔值只有两个,主要用来做逻辑判断
true -- 表示真
false--表示假
使用typeof 检查一个布尔值时,会返回boolean
4.Null和Undefined
Null(空值)类型的值只有一个,就是null
null专门用来表示一个为空的对象
使用 typeof 检查一个null值时,会返回object
Undefined(未定义)类型的值只有一个,就undefined
当声明一个变量,但是并不给变量赋值时,它的值就是undefined
使用typeof 检查一个undefined也会返回undefined
五.强制类型转换
强制类型转换:指的是将一个数据类型强制转换为其他的数据类型
类型的转换主要指将其他的数据类型转换为String、Number、Boolean
- 将其他的数据类型转换为String
方式一:调用被转换数据类型的toString()方法,该方法不会影响到原变量,会将转换的结果返回。但是注意:null和undefined这两个值没有toString()方法,如果调用他们的方法会报错
例如:a.toString();
方式二:调用String()函数,并将被转换的数据作为参数传递给函数。
例如:String(a);
使用String()函数做强制类型转换时,对于Number和Boolean实际上就是调用的toString()方法,但是对于unll和undefined,就不会调用toString()方法,它会将null直接转换为“null”,会将undefined直接转换为“undefined”- 将其他的数据类型转换为Number
方式一:使用Number()函数 例如:Number(a);
--字符串 ->数字
如果是纯数字的字符串,则直接将其转换为数字;
如果字符串中有非数字的内容,则转换为NaN;
如果字符串是一个空串或者是一个全是空格的字符串,则转换为0;
--布尔-->数字
true 转成1;false转成0
--Null-->数字 0
--undefined-->数字 NaN
方式二:这种方式专门对付字符串
parseInt()把一个字符串转换为一个整数。它可以将一个字符串中有效的整数内容取出来,转换为Number
parseFloat()把一个字符串转换为一个浮点数。它可以取出有效的小数- 将其他的数据类型转换为Boolean
使用Boolean()函数
数字--->布尔 除了0和NaN,其余的都是true
字符串-->布尔 除了空串,其余的都是true
null和undefined都会转换为false对象也会转换为true
六.其他进制的数字
在js中,如果想表示16进制的数字,需要以0x开头
如果想表示8进制的数字,则需要以0开头
如果想要表示2进制的数字,则需要以0b开头,但是不是所有的浏览器都支持
总结
主要讲JS命名规范、字面量和变量、标识符、数据类型(String字符串、Number数值、Boolean布尔值、Null和Undefined)、强制类型转换以及其他进制的数字。