第一章 JavaScript基础
1、什么是JavaScript
JavaScript是一种基于对象和事件驱动的、并具有安全性能的脚本语言
1.1 JavaScript特点
向HTML页面中添加交互行为
脚本语言,语法和Java类似
解释性语言,边执行边解释
1.2 JavaScript组成
JavaScript :ECMAScript: 基础语法
DOM:操作HTML元素
**BOM: 操作浏览器 前进 ,后退,刷新 **
1.3 JavaScript的基本结构
<script type="text/javascript">
<!—
JavaScript 语句;
—>
</script >
可以包含在文档中的任何地方,只要保证这些代码在被使用前已读取并加载到内存即可
1.4 JavaScript的执行原理
1.5 网页中引用JavaScript的方式
1.内部使用
<script type="text/javascript">
document.writeln("hello world");
document.write("你好 铁铁");
</script>
2.外部JS文件
<!--引入JS-->
<script src="export.js" type="text/javascript"></script>
3.直接在HTML标签中 (行内使用)
//使用触发属性(src、事件、href)
<input name="btn" type="button" value="弹出消息框"
onclick="javascript:alert('欢迎你');"/>
2、JavaScript核心语法
核心语法:变量、数据类型、数组、运算符号、控制语句、注释、输出/输入、语法约定
2.1 核心语法—变量
先声明变量再赋值
var width;<!--var -用于声明变量的关键字-->
width = 5; <!-- width - 变量名-->
同时声明和赋值变量
var catName= "皮皮";
var x, y, z = 10;
不声明直接赋值
width=5;
变量可以不经声明而直接使用,但这种方法很容易出错,也很难查找排错,不推荐使用
2.2 核心语法—数据类型&typeof运算符
typeof(变量)检测数据类型
数据类型 | 说明 |
---|---|
string | 用单引号或双引号来声明的字符串boolean:true或false |
boolean | true或false |
number | 整数或浮点数 |
object | javascript中的对象、数组和null |
undefined | 变量被声明后,但未被赋值 就是undefined |
null | 等价于undefined |
2.3 核心语法—String对象
属性:
字符串对象.length
方法
字符串对象.方法名();
var str="this is JavaScript";
var strLength=str.length; //长度是18
方法名称 | 说 明 |
---|---|
charAt(index) | 返回在指定位置的字符 |
indexOf(str,index) | 查找某个指定的字符串在字符串中首次出现的位置 |
substring(index1,index2) | 返回位于指定索引index1和index2之间的字符串,并且包括索引index1对应的字符,不包括索引index2对应的字符 |
split(str) | 将字符串分割为字符串数组 |
2.4 核心语法—数组
创建数组
var 数组名称 = new Array(size);
var 数据名称 = new Array(值1,,值2)
var 数据名称 = [值1,值2];
//Array 表示数组的关键字
//size 表示数组中可存放的元素总数
为数组赋值
var fruit= new Array("apple", "orange", " peach","banana");
var fruit = new Array(4);
fruit [0] = " apple ";
fruit [1] = " orange ";
fruit [2] = " peach ";
fruit [3] = " banana ";
访问数组
数组名[下标]
数组的常用属性和方法
类别 | 名称 | 描述 |
---|---|---|
属性 | length | 设置或返回数组中元素的数目 |
join( ) | 把数组的所有元素放入一个字符串,通过一个的分隔符进行分隔 | |
方法 | sort() | 对数组排序 |
push() | 向数组末尾添加一个或更多 元素,并返回新的长度 |
2.5 核心语法—运算符号
类型 | 运算符 |
---|---|
算术运算符 | + - * / % ++ — |
赋值运算符 | = += -= |
比较运算符 | > < >= <= == != === !== |
逻辑运算符 | && || ! |
2.6 核心语法—逻辑控制语句
//if条件语句
if(条件)
{
//JavaScript代码;
}
else
{
//JavaScript代码;
}
//switch多分支语句
switch (表达式)
{ case 常量1 :
JavaScript语句1;
break;
case 常量2 :
JavaScript语句2;
break;
...
default :
JavaScript语句3;
break;
}
//for、while循环语句
for(初始化; 条件; 增量)
{
JavaScript代码; }
while(条件)
{
JavaScript代码;
}
//for-in
var fruit=[ "apple", "orange", "peach","banana"];
for(var i in fruit){
document.write(fruit[i]+"<br/>");
}
2.7循环中断
//break
<script type="text/javascript">
var i=0;
for(i=0;i<=5;i++){
if(i==3){
break;
}
document.write("这个数字是:"+i+"<br/>");
}
</script>
<script type="text/javascript">
var i=0;
for(i=0;i<=5;i++){
if(i==3){
break;
}
document.write("这个数字是:"+i+"<br/>");
}
</script>
//continue
<script type="text/javascript">
var i=0;
for(i=0;i<=5;i++){
if(i==3){
continue;
}
document.write("这个数字是:"+i+"<br/>");
}
</script>
2.8 核心语法—注释
单行注释以 // 开始,以行末结束
alert("恭喜你!注册会员成功"); //在页同上弹出注册会员成功的提示框
多行注释以 /* 开始,以 / 结束,符号 /…… */ 指示中间的语句是该程序中的注释
/*
使用for循环运行“document.write("<h3>Hello World</h3>");”5次
使用document.write在页面上输出“Hello World”
*/
2.9 核心语法—常用的输入/输出
alert() 警告框或提示框
alert("提示信息");
prompt() 输入提示框
prompt("提示信息", "输入框的默认信息");
prompt("请输入你喜欢的颜色","红色");
prompt("请输入你喜欢的颜色","");
confirm() 询问框
if(confirm("是否删除此数据")){
alert("删除成功");
}else{
alert("取消删除");
}
2.10 核心语法—语法约定
代码区分大小写
变量、对象和函数的名称
分号
3.程序调试
3.1Chrome开发人员工具
停止断点调试
单步调试,不进入函数体内部
单步调试,进入函数体内部
跳出当前函数
禁用所有的断点,不做任何调试
3.2 alert()方法
4.什么是函数
函数的含义:类似于Java中的方法,是完成特定任务的代码语句块
使用更简单:不用定义属于某个类,直接使用
函数分类:系统函数和自定义函数
4.1常用系统函数
parseInt (“字符串”)
将字符串转换为整型数字
如: parseInt (“86”)将字符串“86“转换为整型值86
parseFloat(“字符串”)
将字符串转换为浮点型数字
如: parseFloat(“34.45”)将字符串“34.45“转换为浮点值34.45
isNaN()
用于检查其参数是否是非数字
4.2 自定义函数
定义函数
function 函数名( ){
//JavaScript语句
[return 返回值]
}
调用函数(函数调用一般和表单元素的事件一起使用,调用格式)
事件名= "函数名( )" ;
5.变量的作用域
//全局变量
//局部变量
<body onload="second( )">
var i=20;
function first( ){
var i=5;
for(var j=0;j<i;j++){
document.write(" "+j);
}
}
function second( ){
var t=prompt("输入一个数","")
if(t>i)
document.write(t);
else
document.write(i);
first( );
}
6.事件
使用HTML属性
名称 | 说明 |
---|---|
onload | 一个页面或一幅图像完成加载加载 |
onclick | 鼠标单击某个对象 |
onmouseover | 鼠标指导移到某元素上 |
onkeydown | 某键盘按键被按下 |
onchange | 域的内容被改变 |
<!DOCTYPE html>
<html onkeydown="feydown()">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<button onclick="login()" >登录按钮</button>
</body>
<script type="text/javascript">
function feydown(){
if(e.keyCode==13){
login();
}
}
function login(){
alert("登陆成功");
}
</script>
</html>
按下 |
| onchange | 域的内容被改变 |
<!DOCTYPE html>
<html onkeydown="feydown()">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<button onclick="login()" >登录按钮</button>
</body>
<script type="text/javascript">
function feydown(){
if(e.keyCode==13){
login();
}
}
function login(){
alert("登陆成功");
}
</script>
</html>