一、什么是JavaScript
1、是一种嵌入在网页中的程序段。
2、是一种解释型语言(无需编译,运行时直接执行),被浏览器解释执行
3、由Netscape发明,ECMA将其标准化。
4、JavaScript借用了Java的名字,但它和java没有关系。
5、出于安全性考虑,增加了JavaScript的限制
6、增强客户端的交互功能(js事件,对html元素进行增删改查,验证数据)
二、JavaScript体系
ECMAScript:提供js语法规则和原生对象。
BOM浏览器对象模型:与浏览器进行交互的方法,包含DOM。
DOM文档对象模型:处理网页内容的方法。
三、html中如何引用JavaScript
1、内嵌方式:script标签
2、外部方式:写js文件
3、以on开头的事件属性,可以使用js
4、以伪url的方式(a标签的href属性)
四、变量
1、概念:存储数据的容器(在计算机内存中开辟的一个地址块)。
2、变量的声明:
var 变量名;
var 变量名 = 值;
3、变量命名规则:
- 区分大小写
- 由数字、字母、$、下划线组成,但是不可以用数字开头
- 不能是系统关键字和保留字
- 见名知意
三种命名方式: - 帕斯卡:所有单词的首字母大写
- 驼峰:第一个单词首字母小写,其他单词首字母大写
- 匈牙利:先写缩写
赋值符号 =
var 变量名 = 值; //右边的值,放到左边
注:创建变量,没有赋值时,它是undefined
五、js的输入、输出
输入:接受用户信息
输入框:window.prompt("请输入你的文字");
注意:输入的内容都是string类型。
输出:展示信息给用户
弹出框: alert();
网页输出:document.write(); //支持标签
控制台输出:console.log();
注释:
单行注释://
多行注释:/* */
文档注释:/** */(自动生成文档)
六、数据类型
js又称弱类型语言
1、基本数据(原始)类型
number:数字
string:字符串
boolean:布尔类型(true、false)
null:表示不存在的对象
undefined:声明了,但没有赋值
2、引用数据类型
数组、对象
typeof:查看数据的类型
null 的typeof是object
undefined的typeof是undefined
七、数据类型的转换
1、转换为布尔型
Boolean(要转换的值);
注:
1、字符串转Boolean,只要是有数据,都转换为true;当它为空字符串时,则转换为false。
2、数字转Boolean,除了0为false以外,其余数字都是true。
3、null 为false
5、undefined 为false
2、转换为数字类型
Number():整体转换
注:
1、Boolean类型,true转换为1;false转换为0
2、null:0
3、undefined:NaN
4、string类型转换为数字,字符串必须都是数字,不然就是NaN(not a number)。
parseInt():从左往右一位一位的转换,如果有一个转换失败的话,就停止转换,结果为整型
parseFloat():从左往右一位一位的转换,如果有一个转换失败的话,就停止转换,结果为浮点数
3、转换为字符串类型
<1> 要转换的值.toString();
注意:要转换的值,不能是null和undefined,因为它们没有 toString() 这个方法。
<2> String()
八、运算符
1、算数运算符(注意隐式转换)
+、-、* 、/、%(取模,求余数)
+:两个含义
1)、相加,+号两边都是数字
2)、连接,+号两边中有一边是字符串
注:js小数的精度问题,需变成整数进行运算
2、赋值运算符(右边计算的结果赋值给左边)
=
+= num += 3; num = num + 3;
-=
*=
/=
3、关系运算符
>、<、>=、<=、==、===、!=、!==
== :值相等
=== :值相等,且类型也相同
4、逻辑运算符
&& 并且(所有的条件都满足,只要有一个不满足,结果为false)
|| 或者(所有的条件有一个满足,即为true)
! 取反
5、三元运算符
(条件表达式)?条件为真的处理:条件为假的处理
6、++、–
++ 自增1
-- 自减1
注:单独的语句++在前或者在后没有影响。
但在复合语句中++在前,表示先进行+1,再使用变量;++在后,表示先使用变量,再进行+1。
7、转义符
(1)如果是在document.write()中换行,则应该用:<br/>
(2)如果是在alert()中换行,则应该用: \n