JavaScript基础知识完整版.ppt课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《JavaScript基础知识完整版.ppt课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JavaScript 基础知识 完整版 ppt 课件
- 资源描述:
-
1、JavaScript第一章JavaScript概述第一节 JavaScript简介一、JavaScript是什么?JavaScript是一种基于对象基于对象(内置了许多对象)(内置了许多对象)和事件驱动并具有相对安全性的客户端客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。知识扩充:1、事件驱动:用户与网页交互时产生的操作,称为事件。事件可以由用户引发,也可能是页面发生改变,甚至还有你看不见的事件(如Ajax的交互进度改变)。绝大部分事件都由用户的动作所引发,如:用户按鼠标的按键,就产生click事件,若鼠标的指针在链接
2、上移动,就产生mouseover事件等等。在JavaScript中,事件往往与事件处理程序配套使用。2 2、客户端脚本语言:、客户端脚本语言:不同于服务器端脚本语言,例如PHP与ASP,JavaScript是客户端脚本语言,也就是说JavaScript是在用户的浏览器上运行,不需要服务器的支持而可在用户的浏览器上运行,不需要服务器的支持而可以独立运行。以独立运行。JavaScript是一种脚本语言,其源代码在发往客户端运行之前不需经过编译,而是将文本格式的字符代码发送给浏览器由浏览器解释运行。解释语言的弱点是安全性较差,而且在在JavaScriptJavaScript中,如果一条中,如果一条运
3、行不了,那么下面的语言也无法运行运行不了,那么下面的语言也无法运行,并且速度较慢。二、JavaScript发展历史:1、1995年2月,就职于NetScape公司 布兰登 艾奇,开发一种名为LiveScript的脚本语言,为了赶在发布日期前完成LiveScript的开发,NetScape与与Sun公公司建立了一个开发联盟。为了搭上媒体热炒的司建立了一个开发联盟。为了搭上媒体热炒的Java的顺风车(当时的顺风车(当时Java已经很火),临时把已经很火),临时把LiveScript改名为改名为JavaScript(1.0)。)。2、此时,微软在其Internet Explorer 3中加入了名为J
4、Script的JavaScript实现(命名为JScript是为了避开与NetScape有关的授权问题)。3、微软推出JScript后,JavaScript出现了3个不同的版本:NetScape Navigator中的JavaScript、Internet Explorer中的JScript和ScriptEase中的CEnvi。当时没有标准规定JavaScript的语法和特性,3个版本并存的局面已经暴露了这个问题(不兼容问题)。所以,JavaScript的标准化问题被提上了议事日程。4、1997年,欧洲计算机制造商协会(ECMA)完成了ECMA-262(发音“ek-ma-script”)的新脚
5、本语言的标准。5、以后,浏览器开发商就开始致力于将ECMAScript作为各自JavaScript实现的基础,也在不同程度上取得了成功。注:虽然JavaScript和ECMAScript通常都被人们用来表达相同的含义,但JavaScript的含义却比ECMA-262中规定的多得多。一个完整的一个完整的JavaScript实现由下列实现由下列3个不同的个不同的组成部分:核心(组成部分:核心(ECMAScript)、文档对象模型)、文档对象模型(DOM)、浏览器对象模型()、浏览器对象模型(BOM)。三、JavaScript开发及运行环境1、开发环境:JavaScript是一种脚本语言,代码不需要
6、变异成二进制,而是以文本的形式存在,因此任何文本编辑器都可以作为其开发环境,比如记事本(虽然很少人使用)、EditPlus、Ultra Edit(UE)、Dreamweaver等。2、运行环境:JavaScript依赖于浏览器,即浏览器是JavaScript的运行环境。当前主流浏览器都能运行今后学习的JavaScript代码,若出现浏览器兼容问题,到时会请同学们注意。不同的编辑器会对语法进行简单的错误识别,不同的浏览器也提供对JavaScript程序的调试功能。问:还记得当前主流的浏览器吗?注意:一个页面中只要一个地方JavaScript语法错误,则整个JavaScript程序都不执行。为我们
7、找错和调试带来了困难。第二节 定义和使用JavaScript方式1、定义方式(1)嵌入HTML文件中一般放在(事实上可以放在任何位置)中,格式:/此处为JavaScript代码(2) 定义专门的外部文件 将JavaScript代码写在一个独立的脚本文件(扩展名为.js)中,在页面中使用时直接导入该脚本文件即可,导入的格式: 注意:不能这么写: 错误!必须有结束标签知识扩充:除了上面两种最为常用的方式外,还可以在一下地方定义JavaScript代码:(1)在HTML的元素事件属性中 比如,按钮的单击事件,代码:示例:(2)在超链接中定义 语法:超链接示例:效果:2、一个简单的JavaScript
8、的例子(1)嵌入到HTML文件中单击后显示的效果(2)定义专门的js文件A、定义一个扩展名为.js的文件,其中定义如下代码:B、定义一个HTML文件,导入该外部js文件,并调用js文件中的代码:C、单击“按钮”后,同样实现效果:三、作业1、在HTML嵌入一段JavaScript代码,并定义一个按钮,当点击按钮时,弹出“欢迎学习JavaScript”。2、将上题的JavaScript代码放在单独的js文件中,运行。第二章 JavaScript语言基础一、对一些问题的说明:1、区分大小写:JavaScript中的变量、函数名和操作符都区分大小写,关键字不能做变量或函数名字。所以,test和Test
9、是两个变量,typeof因是关键字所以不能是函数名或者变量名。2、标识符:就是变量、函数、属性、函数的参数等。规定:(1)第一个字符必须是字母、下划线(_)、美元符号($)。(2)其他字符可以是字母、下划线、美元符号或数字。第一节:数据类型、变量和运算符3、注释:包括单行注释和多行注释。(1)单行注释:/ 如: /这是一个单行注释(2)多行注释 /* */如:/*这是一个多行注释*/4、语句:JavaScript中语句以一个;结尾(英文分号)。但可以省略 ; 。比如:注:分号虽不是必须的,但建议必须加上它,这样可以提高效率(解析器不必再花时间推测应该在哪里插入分号了)和避免错误。5、在控制语句
10、中,单行语句可以不加(不放在代码块中),但强烈加上即使代码块中只有一条语句。多行语句如果放在一个代码块中执行,必须加二、数据类型JavaScript是弱类型脚本语言,使用变量之前,无须定义,想使用某个变量时直接使用即可,JavaScript会根据需要自动确定数据类型和进行数据类型的转换,但每个变量还是要确定数据类型的。JavaScript中数据类型基本数据类型(简单数据类型)和复合数据类型(复杂数据类型)两类,不同大类下面又有自己的小类,如下表:大类大类数据类型数据类型说明说明基基本本数数据据类类型型数值类型数值类型(Number)包含整数和浮点数布尔类型布尔类型(Boolean)只有true
11、和false两个值 【两个值小写】字符串类型字符串类型(String)表示一个字符序列,必须使用单引号()或双引号()括起来Undefined类型类型(Undefined)用来确定一个已经创建但还没有赋初值的变量,只有一个值为:undefined 【小写】Null类型类型(Null)表名某个变量的值为空,只有一个值为:null【小写】复复合合数数据据类类型型Object类型类型(Object)该类型的值为对象,对象由一些列属性(变量)和方法(函数)的集合,访问它们时用:. (英文点号)数组(数组(Array)一系列的变量组成函数函数(Function)包含一段可执行的代码1、typeof操作符
12、:用来检测给定变量的数据类型对一个值使用typeof操作符可能返回下列某个字符串之一:(1)undefined:值未定义时。(2)boolean:值是布尔值时。(3)string:值是字符串时。(4) number:值是数值时。(5)object:值是对象或者值是对象或者null(代表空对代表空对象引用)象引用)。(6)function:值是函数时。示例:注:A、typeof操作符的操作数可以是变量也可以是数值字面量。如:B、因typeof是一个操作符而不是函数,所以可以使用小括号(())将操作数括起来,也可以不使用,如:C、typeof(null) 返回值是object,原因在于特殊值nul
13、l被认为是一个空对象的引用(一个对象为空时,值是null)。上页中有例子。2、Undefined类型:该类型只有一个值,即特殊的undefined。在使在使用用var声明变量但未对其加以初始化时,这个变声明变量但未对其加以初始化时,这个变量值就是量值就是undefined。(注意值为小写,JS大小写敏感)。示例:知识扩充:包含undefined值的变量和尚未定义的变量是不一样的。例如: 对于尚未声明的变量,可以使用typeof操作符检测其数据类型。返回值也为:undefined值,和定义后未赋初值的变量一样。即使用一个未定义的变量时没有值,但其类型为Undefined。建议:定义一个变量时显式
14、地初始化变量。3、Null类型:只有一个值,即:null。null值表示一个空对象(这正是使用typeof检测null值会返回“object”)。如:知识扩充:如果定义的变量准备将来用于保存对象,那么最好将该变量初始化为null而不是其他值。这样,直接检查null值就可以判断相应的变量是否已经保存了一个对象的引用:var car=null;/其他操作if(car!=null) /前提是car已赋初值null/对car进行某些操作另:4、Boolean类型:该类型有两个值:true和false。(必须全是小写)可以将其他值通过Boolean()函数转换为Boolean类型,返回值取决于要转换值的
15、数据类型和实际值。其他类型转为Boolean类型的规则:数据类型数据类型转换为转换为true值值转换为转换为false值值BooleantruefalseString任何非空字符串(空字符串)Number任何非零数字值(包括无穷大)0和NaNObject任何对象nullUndefinedundefined知识扩充:使用流控制语句(比如if语句)时,会将其他值自动转换为相应的Boolean转换(根据相应的数据类型和对应的值)。比如:运行结果:5、Number类型:包括整数和浮点数值(双精度数值)。除了常用的十进制外,还可以表示八进制和十六进制。八进制的第一位必须是0,后跟(07),十六进制前两位
16、是0 x,后跟(09及AF)。八进制和十六进制表示的数值最终将被转换为十进制。(1)浮点数值:该数值中必须包含一个小数点。var num1=1.1;var num2=0.1;var num3=.1;/有效,但不推荐。如果数值只有小数部分,则可以省略整数部分的0。(2)数值转换:)数值转换:2个函数将非数值转换为数值:I.parseInt():用于将字符串转换成整数数值。II.parseFloat():用于将字符串转换成浮点型数值。I.parseInt():将字符串转换为整数。规则:A、它会忽略字符串前面的空格,直至找到第一个非空格字符,如果第一个字符不是数字字符或者负号,则返回NaN。B、转换
17、空字符串返回NaN。 C、如果第一个字符是数字字符,会接着进行解析,直到完成或者遇到非数字字符。D、使用该函数的第二个参数指定转换时要转成的进制数。指定基数会影响到转换的输出结果:II.parseFloat():将一个字符串转成浮点数。和parseInt基本相同,区别:(1)字符串中的第一个小数点是有效的,第二个小数点是无效的,后面的字符串会被忽略。“22.34.5” 转成 22.34(2)始终会忽略前导0(把前导0直接去掉),十六进制数始终被转成0,只解析十进制数,所以没有第二个参数。即只能转成十进制即只能转成十进制(3)字符串中没有小数点或小数点后边全是0,则该函数返回整数。注意:如果需要
18、将表单中的数值(字符串)在前台通过JS进行算数运算时,必须先使用parseInt或者parseFloat进行转换再运算。 知识扩充:(1)保存浮点数值需要的内存空间是保存整数的两倍,因此js会自动将一些能够转换为整数的自动转换为浮点数,如小数点后没跟任何数字(如1.)或者浮点数本身是个整数(如1.0)。如:结果都为1: (2)可以使用e表示法(科学计数法),值为e前面的*10的指数次幂。var num=3.125e7; /等价于 31250000var num=3e-7;/0.0000003; (3)由于精度问题,导致进行浮点数的算数运算时有时结果不准确。如:第一个alert输出: 第二个输出
19、:(4)数值范围:ECMAScript表示的最小数值是:Number.MIN_VALUE(一般浏览器该值是:5e-324)能够表示的最大值是:Number.MAX_VALUE.上面两个值,不同浏览器会有区别,使用下面的语句可测出:(5)NaN:(Not a Number)。表示一个本来要返回数值的操作未返回数值的情况,比如:任何涉及NaN的操作(如NaN/10)都会返回NaN 。NaN与任何值都不想等。包括NaN本身。alert(Nan=Nan);/falseisNaN(),用来判断数值是否“不是数值”,不是数值时返回true,否则,返回false。6、String类型:类型:表示由0或多个1
20、6位Unicode字符组成的字符序列(每个字符16位Unicode编码),即字符串。字符串既可以是双引号()也可以是单引号()表示。下面的表示都是合法的:var str1 = “hello”; var str2 = hello这两种表示的语法在解释上没有任何区别,但必须匹配,否则会出现错误。(1)有一些转义字符具有特殊含义:n (换行)t(制表)b(空格) r(回车) f(进纸) (斜杠) (单引号) ”(双引号) (2)length:该属性返回字符串的长度。关于汉子等双字节字符,length属性可能不会精确地返回字符串中的字符数目。(实际上,js中双字节字符算一个长度,是由unicode编码
21、决定的(该编码用2个字节表示) alert(软件系.length);/3(3)【了解】字符串是不可变的,即,字符串一旦创建,值不能再改变。要改变某个变量保存的字符串,首先要销毁原来的字符串,然后再用一个包含新值的字符串填充该变量。var lang=”Java”;/开辟空间lang = lang+”Script”;/Scirpt字符串也会开辟空间。再开辟一个容纳Java和Script的空间放新串,并且销毁原来的2字符串空间。这样对于以前的浏览器性能较低,现在已解决了这个效率低的问题。(4)【了解】将其他数值转换为字符串: A:.toString():函数 可以将其他数值(包括字符串,除了除了nu
22、ll和和undefined值值)转换为字符串表现。 var age=11; var ageAsString = age.toString();/”11” var bool=true; var boolAsString = bool.toString();/”true”特别注意null和undefined无法转成字符串。可以为该函数指定一个参数(值为2、8、10、16)分别用以转换数值时变成不同进制的字符串数据。var num=10;num.toString(2);/1010 ,转成二进制num.toString(8);/12,转成八进制num.toString(10);/10 ,转成十进制nu
23、m.toString(16);/A 或a ,转成十六进制B:String(要转换的数值):该函数和.toString()的区别在于可以转换null和undefined值。var value1=null,value2;String(value1);/nullString(value2);/undefined作业: 1、使用typeof关键字测试不同变量的数据类型,并输出他们的数据类型。 2、使用parseFloat函数,编写一个可以进行加、减、乘、除、取余运算的简单计算器。三、变量:JavaScript的变量是松散类型的,所谓松散类型是可以用来保存任何类型的数据;并且一个变量的值类型是可变的。1
24、、定义方式:A、使用var操作符(关键字),后跟变量名的形式。B、不适用var关键字,使用时直接赋初值。【不推荐】2、作用范围:根据范围不同,变量分为:全局变量和局部变量。函数外边直接定义的变量称为全局变量,函数内部定义的变量称为局部变量。如:很奇怪的是:JavaScript中函数内定义的变量没有块范围,而是在整个函数内有效,如:哪怕是在函数中间使用var声明的变量,在函数开始处照样有效,只是此时没有赋初值。3、使用var和不使用的区别:A、使用var定义变量,程序会强制定义一个新变量;B、不使用var定义变量,系统会优先在当前上下文中搜索是否存在该变量,只有变量不存在的前提下,才会重新定义一
25、个新变量。当然,推荐使用var在函数外边定义全局变量,而在函数内部使用var定义局部变量。 函数内部去掉var后,输出不同的结果:四、操作符:运算符运算符种类种类算数运算符算数运算符+(加)、-(减)、*(乘)、/(除)、%(取余)、+(累加)、-(累减)赋值运算符赋值运算符=(赋值)、+=(加赋值)、-=(减赋值)、*=(乘赋值)、/=(除赋值)、%=(取余赋值)关系运算符关系运算符(大于)、=(大于等于)、=(小于等于)、!=(严格不等于,比较类型和值)、=(严格等于,比较类型和值)字符串运算符字符串运算符+ 逻辑运算符逻辑运算符&(与)、|(或)、!(非)条件运算符条件运算符? : (唯
展开阅读全文