1.什么是 JavaScript?
JavaScript 是嵌入在 html 在浏览器中的一门脚本语言,是解释型语言,不需要进行预编直接由浏览器解释执行。
2.JavaScript 能解决什么问题?
JavaScript 主要是用来向 html 页面添加交互行为。
3.JavaScript特点
- 可以使用任何文本编辑工具编写
- 由浏览器内置的JavaScript引擎执行代码
事先不编译,逐行执行,内置大量现成对象
适宜:
1.客户端数据计算
2.客户端表单合法性验证
3.浏览器时间的触发
4.网页特殊显示效果制作
5.服务器的异步数据提交
4.使用JavaScript
1. 事件定义式
在事件定义时直接写 js
<html>
<head></head>
<body>
<input type="button" value="按钮1" onclick="alert('hello,world');"/>
</body>
</html>
2. 嵌入式
使用<script>
标签
<html>
<head>
<script type="text/javascript" >
function method1(){
alert("hello,world");
}
</script>
</head>
<body>
<input type="button" value="按钮1" onclick="method1();"/>
</body>
</html>
3. 文件调用式
代码写在单独的 .js 文件中,在 .html文件中通过src属性引用 .js 文件。.js文件中直接写js代码,不用写<script>
标签
<html>
<head>
<script src="myjs.js" type="text/javascript"></script>
</head>
<body>
<input type="button" value="按钮1" onclick="method2()"/>
</body>
</html>
5.js基础语法
1. 语法规范
- 由Unicode字符集编写
- 单行注释:// 多行注释:/**/
大小写敏感,使用换行或者分号结束
2. 标示符与变量
由数字、字母、下划线、$符组成,并且不能以数字开头,js中的保留字不能作标示符使用。变量:
- js中用 var 关键字申明变量,变量没有类型,但变量所引用的数据是有类型的;
变量用 “=” 初始化,没有初始化的变量其值默认是 undefined;
3. 数据类型
- 特殊类型:null /undefined
- 内置对象(基本类型):String /Number / Boolean /Array / Function
- 外部对象:window对象(浏览器对象)/document对象(文档对象)
自定义对象:object对象
补充:
- null 在程序中表示“无值”或者“无定义”,给一个对象赋值为 null 表示清空变量的内容;
- undefined 表示申明了变量但是未初始化,对象属性不存在;
- js 中的单引号和双引号其作用一样,嵌套使用时需要注意,并且没有字符类型;
- Boolean 类型有两个值 true 和 false,可以自动转型为数值参与运算,转型时 true =1,false=0;
js 是松散类型的语言,申明变量时不用指定类型,变量所引用的数据需要指定类型,不同类型在计算过程中会自动进行转换,所有类型都可以转换成 String 类型。
数字 + String 数字转成 String
数字 + boolean boolean转成数字
字符串 + boolean boolean转换成字符串
boolean + boolean boolean 转换成数字数据类型转换函数
toString,所有类型都可以转成 String;
parseInt(),强制转换成整数类型,如果不能转换返回 NaN;
parseFloat(),强制转换成浮点类型,如果不能转换返回 NaN;
typeof(),返回表达式的数据类型;
isNaN(),判断表达式经过转换后是不是不是一个数字,不是数字则返回 true ;
4. 运算符
- java 中 5/2=2 js 中 5/2=2.5(java 中是取整,js 中是求商);
- js 中全等于用 “===”表示,类型相等、数值相等;
- 不全等用 “!==”表示;
- js 中也支持三目运算,表达式?表达式1:表达式2;
6.流程控制语句
js 中的流程控制语句和 java 中的流程控制语句基本相同。
- if()else{}
- if()else if(){}
- switch…case…
- while(){}
- do{}while()
- for(){}
补充:
- java 中条件表达式必须是 boolean 值,而 js 中条件表
达式可以是任何表达式,即表达式的值可以是任何类型
表达式的值是这些时: null / “”/ undefined / 0 / NaN ,其结果都为 false。即一切表示空的值都为 false。
- java 中条件表达式必须是 boolean 值,而 js 中条件表