第二章JavaScript.ppt
《第二章JavaScript.ppt》由会员分享,可在线阅读,更多相关《第二章JavaScript.ppt(107页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2章章 JavaScript语言语言第二章(JavaScript)12/21/20221lJavaScriptJavaScriptJavaScriptJavaScript简介简介简介简介lJavaScriptJavaScriptJavaScriptJavaScript数据类型数据类型数据类型数据类型lJavaScriptJavaScriptJavaScriptJavaScript变量变量变量变量lJavaScriptJavaScriptJavaScriptJavaScript表达式和运算符表达式和运算符表达式和运算符表达式和运算符lJavaScriptJavaScriptJavaScrip
2、tJavaScript语句语句语句语句lJavaScriptJavaScriptJavaScriptJavaScript对象对象对象对象lJavaScriptJavaScriptJavaScriptJavaScript数组数组数组数组lJavascriptJavascriptJavascriptJavascript函数函数函数函数lJavaScriptJavaScriptJavaScriptJavaScript类和模块类和模块类和模块类和模块lWindowsWindowsWindowsWindows对象和对象和对象和对象和DocumentDocumentDocumentDocument对象对象
3、对象对象l JavaScript简介简介 JavaScript是一种轻量级的、解释性的程序设计语言,而且具备一定面向对象的能力。JavaScript与操作系统无关,它依赖JavaScript的解释引擎。浏览器通过内嵌JavaScript的解释引擎从而获得了对JavaScript的处理能力。通过在网页中嵌入标签,将JavaScript脚本添加到网页中,使得网页不再是简单的静态HTML,而是包含了控制浏览器的程序、动态创建HTML内容和与用户交互的程序,即动态HTML(DHTML)JavaScript与与Java的区别的区别Java和JavaScript是两个完全不同的产品。Java是SUN公司推
4、出的面向对象的程序设计语言;JavaScript是Netscape公司的产品,目的是为了扩展Netscape浏览器的功能Java是面向对象的程序设计语言,即使开发简单的程序也必须从类定义开始;JavaScript是基于对象的,本身提供了非常丰富的内部对象供设计人员使用Java语言的最小单位是类定义,而JavaScript中则充斥着大量函数Java语言必须经过编译生成字节码,然后由Java虚拟机运行这些字节码;JavaScript是一种脚本语言,其源代码无须经过编译,由浏览器解释执行12/21/20222JavaScript简介简介第二章(JavaScript语言)l JavaScript简介简
5、介Java采用强类型变量,所有变量必须先声明后使用;JavaScript采用弱类型变量,变量使用前无须声明,而由解释器在运行时检查其数据类型Java代码是一种与HTML无关的格式,必须通过HTML中引用外媒体方式进行装载,其代码以字节码的形式保存在独立的文档中;JavaScript的代码是一种文本字符格式,可以直接嵌入HTML文档中,并且可动态装载JavaScript的的版本版本 JavaScript是由网景(Netscape)公司创建,标准版本的名字叫做ECMAScript,目前ECMAScript第3版已经被所有浏览器完整地实现了。ECMAScript第5版浏览器也已经开始实现它了,有时我
6、们也会看到JavaScript的版本号(比如JavaScript1.5或JavaScript1.8)这些是Mozilla的版本号,1.5版本基本上就是ECMAScript3,后续版本包含了非标准的语言扩展12/21/20223JavaScript简介简介第二章(JavaScript语言)l 运行运行JavaScript(1)使用javascript:前缀构建执行JavaScript代码的URL 在设置URL的地方都可以使用这种以javascript:作为前缀的URL,在用户激发该URL时,javascript:之后的JavaScript代码就会获得执行(2)使用元素来包含JavaScript代
7、码【2.1run】如果页面里需要包含大量JavaScript代码,则建议将这些JavaScript脚本放在标签和之间,元素既可作为子元素,也可作为子元素(3)导入JavaScript文件【2.1test】为了让HTML页面和JavaScript脚本更好地分离,我们可以将JavaScript脚本单独保存在一个*.js文件中,HTML页面导入该*.js文件即可。12/21/20224JavaScript简介简介第二章(JavaScript语言)lJavaScript基本数据类型基本数据类型 JavaScript的基本数据类型有5种:数值类型:包含整数和浮点数布尔类型:只有true和false两种值
8、字符串类型:字符串变量必须以引号括起来,引号可以是单引号,也可以使双引号undefined类型:专门用来确定一个已经创建但是没有初值的变量null:用于表明某个变量的值为空除此之外,除此之外,JavaScript还支持复合数据类型:对象、数组、函数、以及一些对象类还支持复合数据类型:对象、数组、函数、以及一些对象类。数值类型数值类型【2.2simpleNumber2】JavaScript并不区分整型数值和浮点数值,所有的数字都是由浮点型表示的。JavaScript采用IEEE754标准定义的64位浮点格式来表示数字,所能表示的最大值为:1.797693134862315710303,最小值是5
9、10-324。JavaScript中的数值形式可以非常丰富,完全支持科学计数法表示。语法格式:数字数字1 E 数字数字2 12/21/20225JavaScript数据类型数据类型第二章(JavaScript语言)lJavaScript基本数据类型基本数据类型数值类型数值类型如果数值只有小数部分,则可以省略整数部分的0,但小数点不能省略【2.2simpleNumber2】e=.24e-2;数值直接量不要以0开始,因为JavaScript不仅支持十进制数,还支持其他进制的数,八进制和十六进制数都以0开始【2.2octal】a=0 x13;/十六进制十六进制 b=014;/八进制八进制当数值变量的
10、值超出了其表值范围时,将出现两个特殊值:Infinity(无穷大)和-Infinity(负无穷大);Infinity、-Infinity与其他数值进行算术运算时,整个算术表达式将变成另一个特殊值:NaN;但Infinity和-Infinity都可以执行比较运算,即Infinity等于Infinity,而-Infinity等于-Infinity【2.2infinity】JavaScript中的算术运算允许除数为0,当除数和被除数同时为零,得到结果是NaN,正数除零的结果就是Infinity,负数除零的结果就是-InfinityNaN如果在算术表示中,整个算术表达式的值为NaN;NaN不会与任何数
11、值变量相等,也就是NaN=NaN也返回false;JavaScript提供isNaN()函数来判断某个变量是否为NaN【2.2judgeNan】12/21/20226JavaScript数据类型数据类型第二章(JavaScript语言)lJavaScript基本数据类型基本数据类型字符串类型字符串类型字符串(string)是由单引号或者双引号括起来的Unicode字符序列,其中可以含有0个或多个字符。与C、C+或Java不同的是,JavaScript并没有char这种单个字符的数据类型,所以要表示单个字符,只能用长度为1的字符串来代替。JavaScript的字符串类型必须以引号括起来,此处的引
12、号既可以是单引号也可以是双引号 a=Hello JavaScript b=Hello JavaScriptJavaScript中比较两个字符串的字符序列是否相等使用=即可,无须使用equals()方法12/21/20227JavaScript数据类型数据类型第二章(JavaScript语言)lJavaScript基本数据类型基本数据类型字符串类型字符串类型JavaScript操作字符串的方法:【2.2StringMethod】charAt():获取字符串特定索引处的字符charCodeAt():返回字符串中特定索引处的字符对应的Unicode值length:直接返回字符串的长度。JavaScr
13、ipt中的中文字符算一个字符toUpperCase():将字符串的所有字母转换成大写字母toLowerCase():将字符串的所有字符转换成小写字母fromCharCode():将系列Unicode值转换成字符串indexOf():返回字符串中特定字符串第一次出现的位置lastIndexOf():返回字符串中特定字符串最后一次出现的位置substring():返回字符串的某个子串slice():返回字符串的某个子串,支持负数参数match():使用正则表达式搜索目标子字符串search():使用正则表达式搜索目标子字符串concat():用于将多个字符串拼接成一个字符串split():将某个字
14、符串分割成多个字符串,可以指定分隔符replace():将字符串中某个子串以特定字符串替代12/21/20228JavaScript数据类型数据类型第二章(JavaScript语言)lJavaScript基本数据类型基本数据类型Undefined和和null类型类型【2.2undefined】undefined类型的值只有undefined一个,该值用于表示某个变量不存在,或者没有为其分配值,也用于表示对象的属性不存在;null用于表示变量的值为空undefined和和null的区别:的区别:undefined表示没有为变量设置值,null表示将变量值设为空注意:很多注意:很多时候时候unde
15、fined和和null本身就相等,即本身就相等,即null=undefined将返回将返回true;如果;如果我们要精确区分我们要精确区分null和和undefined应该考虑使用精确等于符(应该考虑使用精确等于符(=)12/21/20229JavaScript数据类型数据类型第二章(JavaScript语言)lJavaScript复合复合数据类型数据类型 复合复合类型是由多个基本数据类型(也可以包含复合类型)组成的数据体类型是由多个基本数据类型(也可以包含复合类型)组成的数据体。对象(对象(Object)对象是一系列命名变量和函数的集合。其中命名变量的类型可以是基本数据类型,也可以是复合类型
16、;对象中的命名变量称为属性,而对象中的函数称为方法;对象访问属性和函数的方法都是通过“.”来进行JavaScript提供了大量的内置对象和内置类,同时也允许用户自定义对象和类;JavaScript常用的内置类:常用的内置类:12/21/202210JavaScript数据类型数据类型第二章(JavaScript语言)类名类名说明说明类名类名说明说明Array数组类Date日期类Error错误类Function函数类Math数学类,包含执行数学运算的方法Number数值类Object对象类String字符串类数组(数组(Array)【2.2arr】数组是一系列的变量。与其他语言不同的是,Java
17、Script的数组中元素的类型可以不同JavaScript数组的三个数组的三个特征:特征:u数组的长度可变u同一个数组里数组元素的类型可以互不相同u访问数组元素时不会产生数组越界,访问并未赋值的数组元素时,该元素的值为undefined函数函数(Function)【2.2simpleFunction】函数可以是包含一段可执行性代码,也可以接收调用者传入的参数。JavaScript函数的四个函数的四个特征:特征:u无须声明返回值类型u无须声明形参类型u可以独立存在,无须属于任何类u必须使用function关键字定义12/21/202211JavaScript数据类型数据类型第二章(JavaScr
18、ipt语言)全局对象全局对象【2.2this】全局对象是预定义的对象,作为 JavaScript 的全局函数和全局属性的占位符。通过使用全局对象,可以访问所有其他所有预定义的对象、函数和属性。全局对象不是任何对象的属性,所以它没有名称。全局对象的特征全局对象的特征:u全局对象只是一个对象,而不是类。既没有构造函数,也无法实例化一个新的全局对象。u全局对象不是任何对象的属性,所以它没有名称。u全局对象是预定义的对象,作为 JavaScript 的全局函数和全局属性的占位符。u在顶层 JavaScript 代码中,可以用关键字 this 引用全局对象。u全局对象是作用域链的头,意味着在顶层 Jav
19、aScript 中声明的所有变量都将成为全局对象的属性。u通常不必用 this 引用全局对象,因为所有非限定性的变量和函数名都会作为全局对象的属性来查询。u通过使用全局对象,可以访问所有其他预定义的对象、函数和属性。u全局对象的预定义属性都是不可枚举的,所以可以用 for/in 循环列出所有隐式或显式声明的全局变量。全局全局属性:属性:NaN,Infinity,undefined全局函数:全局函数:eval,parseInt,parseFloat,isNaN,isFinite,decodeURI,encodedURI,encodeURIComponent全局构造函数:全局构造函数:Object
20、,Function,Array,String,Boolean,Number,Date,RegExp,Error,EvalError,RangeError,ReferenceError,SyntaxError,TypeError,URIError其他属性的全局对象:其他属性的全局对象:Math,JSON12/21/202212JavaScript数据类型数据类型第二章(JavaScript语言)包装对象包装对象【2.2bz】var s=http:/;var addr=s.sbustring(s.indexOf(:)+2,s.length);JavaScript中不仅提供了数值类型、字符串类型和布
21、尔类型,它同时还提供了数值类、字符串类和布尔类,这些类奖对应的原始数据类型包装了起来,它不但拥有其原始数据值,而且还定义了属性和操作值的方法。当你访问一个字符串的属性或方法时,JavaScript内部会自动创建其包装对象。这个字符串包装对象将替换原始字符串值,它拥有已定义的属性和方法只有当字符串以对象的方式使用时,它的对象才会被创建,并且这个对象时临时性的,在访问了它的属性或方法之后,即不再被使用,它将被系统所回收。这种临时性对象我们称为包装对象包装对象。我们也可以通过String(),Number()或Boolean()构造函数来显示创建包装对象注意:注意:=将原始值和其包装对象视为相等,但
22、将原始值和其包装对象视为相等,但=将它们视为不等,通过将它们视为不等,通过typeof运算符运算符可以看到原始值和其包装对象的不通。可以看到原始值和其包装对象的不通。12/21/202213JavaScript数据类型数据类型第二章(JavaScript语言)原始值和对象原始值和对象【2.2ysz】JavaScript中的原始值(undefined、null、布尔值、数字和字符串)与对象、函数和数组有着根本区别。原始值是不可更改的,而对象是可变的。原始值是不可更改的,而对象是可变的。原始值的比较是值的比较,其中对于字符串来将如果两个单独的字符串,当它们的长度相等且每个索引的字符都相等时,Jav
23、aScript认为它们相等对象的比较并非值得比较,即使两个对象包含同样的属性及相同的值,它们也是不相等的,各个索引元素完全相等的两个数组也不相等,只有当它们引用同一个基对象时,它们才相等。12/21/202214JavaScript数据类型数据类型第二章(JavaScript语言)类型转换类型转换【2.2ysz】转换成布尔转换成布尔值值 方法:(1)使用!var o=23;alert(!o);/转换成字符串,结果是true (2)使用Boolean()var o=new Boolean(23);alert(o);/转换成字符串,结果是falseu1、数字转换成布尔、数字转换成布尔值值除了除了0
24、被转换成被转换成false外,所有自他数字都会被转换成外,所有自他数字都会被转换成true,NaN 也总是被转换成也总是被转换成falseu2、字符串转换成布尔、字符串转换成布尔值值除了空字符串被转换成除了空字符串被转换成false外,所有字符串都会被转换成外,所有字符串都会被转换成true12/21/202215JavaScript数据类型数据类型第二章(JavaScript语言)u3、其他类型转换成布尔、其他类型转换成布尔值值undefined和和null会被转换成会被转换成false,任何对象任何对象(包括数组包括数组)和函数都会被转换成和函数都会被转换成true转换转换成字符串值成字符
25、串值 方法:(1)使用一个字符串与之相加 10+3;(2)使用String()String(22);u1、数字转换成、数字转换成字符串字符串数字都是按原样转换成字符串,但用科学计数法表示的数字数字都是按原样转换成字符串,但用科学计数法表示的数字(也就是带也就是带e的的)会转换成它内部代表的真实会转换成它内部代表的真实的数字的的数字的字符串字符串当当null与数字相加时,不会进行字符串连接,而是会把与数字相加时,不会进行字符串连接,而是会把null转换成转换成0来进行数学来进行数学元素元素对于对于任意数组,将会转为任意数组,将会转为;对于;对于9(1个数字元素)将会转为个数字元素)将会转为9;1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二章 JavaScript 第二
限制150内