JavaScript学习笔记

JavaScript 是互联网上最流行的脚本语言,这门语言可用于 HTML 和 web,更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。JavaScript 是一种轻量级的编程语言JavaScript 是可插入 HTML 页面的编程代码。JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。JavaScript 很容易学习。
注:下列所述JS均为JavaScript的缩写。


JavaScript的内容

1.js组成部分

组成部分 作用
ECMA Script 构成了js核心的语法基础
BOM Browser Object Model浏览器对象模型,用来操作浏览器上的对象
DOM Document Object Model文档对象模型,用来操作网页中的元素

(1)核心(ECMAScript):这一部分主要是js的基本语法。
(2)BOM:Brower Object Model(浏览器对象模型),主要是获取浏览器信息或操作浏览器的,例如:浏览器的前进与后退、浏览器弹出提示框、浏览器地址栏输入网址跳转等操作等。
(3)DOM:Document Object Model(文档对象模型),此处的文档暂且理解为html,html加载到浏览器的内存中,可以使用js的DOM技术对内存中的html节点进行修改,用户从浏览器看到的是js动态修改后的页面。(增删改查)
特点:
交互性(它可以做的就是信息的动态交互)
安全性(不允许直接访问本地硬盘)
跨平台性(只要是可以解析js的浏览器都可以执行,和平台无关)
 

2.基本用法

1.行内JS:在html标签上直接写代码

2内部JS:在script标签中写JS代码,script标签可以放在head中或body中(建议放在body标签的最后)。

3外部JS:定义JS文件,通过script标签的src属性引入对应的JS文件。注:如果script标签设置了src属性,则在script双标签之间的JS代码不会生效。



3.基本语法


3.1语句和注释


语句:JS代码以行为单位,代码从上到下执行,一行一条语句,语句可不加分号结尾,如果一行定义多条语句,那么每条语句都要加分号(建议每条语句都加分号),表达式不需要以分号结尾,如果加了分号则JavaScript引擎会当作语句执行,生成无用的语句。
分号:用于分隔 JavaScript 语句。通常我们在每条可执行的语句结尾添加分号。使用分号的另一用处是在一行中编写多条语句。
注释:单行注释用//起头,多行注释内容放在/*和*/之间,兼容html注释方式<!-- -->。


3.2标识符和关键字

标识符:一个名字,用来给变量和函数进行命名,有特定规则和规范。
标识符命名规则:有Unicode字母、数字、_、$、中文组成,不能以数字开头,不能是关键字和保留字,严格区分大小写。
关键字(保留字):声明变量时,不能使用关键字。

3.3变量

定义:就是存放数据的、内疗可以存储任意数据

 声明变量: 

var 变量名称 = 存储的数据;   	(variable 变量)

变量命名规范:

1.	只能由字母、数字、_(下划线)、$(美元符号)组成。
2.	不能以数字开头。
3.	命名中不能出现-(js会理解成减号进行减法的操作),不能和关键字冲突。

 注意:js是弱类型语言,不重视类型的定义,但js会根据为变量赋值的情况自定判断该变量是何种类型:

数值型:var i = 1;	var d = 2.35;
字符串:var str = "用心学习";
布尔型:var b = true;

变量的注意点:
若只声明而没有赋值则该变量的值为undefined。
变量要有定义才能使用,若变量未声明就使用,JavaScript会报错,告诉你变量未定义。
可以在同一条var命令中声明多个变量。
若使用var重新声明一个已经存在的变量,是无效的。
若使用var重新声明一个已经存在的变量且赋值,则会覆盖掉前面的值。
变量的类型没有限制,可以赋予各种类型的值。


变量提升:

JavaScript引擎的工作方式是先解析代码,获取所有被声明的变量,然后再一行一行地运行。这造成的结果就是所有的变量的声明语句都会被提升到代码的头部,这就叫做变量提升。

注:变量提升只对var命令声明的变量有效。

3.4数据类型 


1.undefined:表示“未定义”或不存在,即此次没有任何值。
2.null:表示空缺,即此处应该有一个值,但目前为空。
3.布尔:ture(真)和false(假)两个特定值。
4.数值:整数和小数。
5.字符串:字符组成的文本。
6.对象:对象是一组数据和功能的集合。
7.数组:数组下标是基于零的,所以第一个项目是 [0],第二个是 [1],以此类推。
 

3.5数据类型转换

自动类型转换:

转字符串:所有的值转字符串都是加引号。
转布尔型:有值为true,无值为false(0为false,非0为true)。
转数值型:空值为0,非空的数值型字符串能转换,非数值字符串转化为NaN。

函数转换:
parseInt()       转整数型
parseFloat()   转浮点型
注:转换时会从值的第零个位置开始找有效数字,直到找到无效数字位置。


显示转换:
toString()     将值转换成字符串
toFixed()      保留指定小数位,四舍五入
注:值不能为null。
Number   强制转换为数值
Boolean  强制转换为布尔型
String      强制转换为字符串
注:可以转换null值。 

上一篇:JavaScript基础


下一篇:身份盗窃保护服务的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告