JavaScript基础
概念
js是一种基于对象和事件驱动的、并具有安全性能的脚本语言
特点
向HTML页面中添加交互行为
脚本语言,语法类似于java(脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,用来控制软件应用程序,脚本通常以文本(如ASCII)保存,只在被调用时进行解释或编译。)
解释性语言,边执行边解释
组成
ECMAScript
ECMAScript是一种可以在宿主环境中执行计算并能操作可计算对象的基于对象的程序设计语言,最新版本es6,2016发布
DOM
DOM(DOM—Document Object Model)是W3C国际组织的一套Web标准。它定义了访问HTML文档对象的一套属性、方法和事件。
BOM
BOM(Browser Object Model) 是指浏览器对象模型,是用于描述这种对象与对象之间层次关系的模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构
基本结构
<script type="text/javascript">
<!—
JavaScript 语句;
—>
</script >
使用位置
可以包含在文档中的任何地方,只要保证这些代码在被使用前已读取并加载到内存即可
使用js方式
<script src="export.js" type="text/javascript"></script>
<input name="btn" type="button" value="弹出消息框 οnclick="javascript:alert('欢迎你');"/>
核心语法
变量
var width;
width = 5;
//以上是先声明在赋值
var catName= "皮皮";
var x, y, z = 10;
//以上是声明赋值同时进行
数据类型
undefined
var width;
//变量width没有初始值,将被赋予值undefined
null
//表示一个空值,与undefined值相等
number
var iNum=23; //整数
var iNum=23.0; //浮点数
boolean
//true或者false
string
//一组被引号(单引号或双引号)括起来的文本
var string1="This is a string";
typeof运算符
var i=1;
console.log(typeof(i));
//返回undefined:变量被声明后,但未被赋值
//返回string:用单引号或双引号来声明的字符串
//返回boolean:true或false
//返回number:整数或浮点数
//返回object:javascript中的对象、数组和null
String 对象
属性length
var str="this is JavaScript";
var strLength=str.length; //长度是18
方法
var str="this is JavaScript";
var strLength=str.length;
strLength.charAt(0);//调用方法
//charAt(index) 返回在指定位置的字符
//indexOf(str,index) 查找某个指定的字符串在字符串中首次出现的位置 第二个为起始位置
//substring(index1,index2) 返回位于指定索引index1和index2之间的字符串,并且包括索引index1对应的字符,不包括索引index2对应的字符(前包后不包)
//split(str) 将字符串分割为字符串数组
数组Array
创建
var fruit= new Array(4);//创建长度为4的数组
var fruit1= new Array("apple", "orange", " peach","banana");//直接赋值
赋值
var fruit = new Array(4);
fruit[0] = " apple ";
fruit[1] = " orange ";
fruit[2] = " peach ";
fruit[3] = " banana ";
访问
var a=fruit[0];//将数组存的首位数据赋值给a
属性(length)
var fruit = new Array(4);
fruit.length//获取数组的长度
方法
var fruit1= new Array("apple", "orange", " peach","banana");
fruit.join("-");
//join( ) 把数组的所有元素放入一个字符串,通过一个的分隔符进行分隔
//sort() 对数组排序(按照对首位的大小进行排序)
//push() 向数组末尾添加一个或更多 元素,并返回新的长度
运算符
算术运算符 | + - ***** / % ++ — |
---|---|
赋值运算符 | = += -= |
比较运算符 | > < >= <= == != === !== |
逻辑运算符 | && || ! |
!==不全等
用来判断两个值是否不全等,和不等类似,不同的是它不会做自动的类型转换,值是什么类型就是什么类型,如果两个值的类型不同,直接返回true。
逻辑控制语句
if语句
if(条件)
{
//JavaScript代码;
}
else
{
//JavaScript代码;
}
for、while循环语句
for(初始化; 条件; 增量)
{
JavaScript代码; }
//知道运行次数时使用
while(条件)
{
JavaScript代码;
}
//不知道运行次数时使用
for in
var fruit=[ "apple", "orange", "peach","banana"];
for(var i in fruit){
document.write(fruit[i]+"<br/>");
}
switch
switch (表达式)
{ case 常量1 :
JavaScript语句1;
break;
case 常量2 :
JavaScript语句2;
break;
...
default :
JavaScript语句3;
}
语法中断
break
<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>
注释
单行注释以 // 开始,以行末结束
多行注释以 /* 开始,以 / 结束,符号 /…… */ 指示中间的语句是该程序中的注释
常用输入输出
alert()
alert("你好");
prompt()
prompt("你好");
var num= prompt(“请输入数字”):可以获取prompt输入的值。
语法约定
代码区分大小写
变量、对象和函数的名称尽量不要重复
每段代码后要有分号
常用系统函数
什么是函数
类似于Java中的方法,是完成特定任务的代码语句块
parseInt (“字符串”)
var i = "86";
console.log(parseInt (i));//将字符串转换为整型数字
parseFloat(“字符串”)
var i = "86.5";
console.log(parseFloat (i));//将字符串转换为浮点型数字
isNaN()
var i = "a";
console.log(isNaN(i));//用于检查其参数值是否是非数字
定义函数
function 函数名(参数.... ){
//JavaScript语句
[return 返回值]
}
调用函数
<script type="text/javascript">
function study( ){
for(var i=0;i<5;i++){
document.write("<h4>欢迎学习JavaScript</h4>");
}
}
</script>
<input name="btn" type="button"
value="显示5次欢迎学习JavaScript" onclick="study( )" />
作用域
全局变量
局部变量
<script type="text/javascript">
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( );
}
</script>
事件
名称 | 说明 |
---|---|
onload | 一个页面或一幅图像完成加载 |
onlick | 鼠标单击某个对象 |
onmouseover | 鼠标指导移到某元素上 |
onkeydown | 某个键盘按键被按下 |
onchange | 域的内容被改变 |
if(t>i)
document.write(t);
else
document.write(i);
first( );
}
### 事件
| **名称** | **说明** |
| ----------- | -------------------------- |
| onload | 一个页面或一幅图像完成加载 |
| onlick | 鼠标单击某个对象 |
| onmouseover | 鼠标指导移到某元素上 |
| onkeydown | 某个键盘按键被按下 |
| onchange | 域的内容被改变 |