SlideShare a Scribd company logo
1 of 24
JavaScript – 基础
刘遵强   | liuzunqiang@staff.hexun.com
JavaScript 基础
ECMA-262 规范定义的 ECMAScript
规定 :
•语法 (标识符,注释 ,; )
•类型(数据类型)
•语句( if/for )
•关键字( var )
•保留字( class,float,int )
•操作符( +-*/ )
•对象 (Math,Date)

ECMAScript 就是对实现该标准规定的各个方面内容的语言的描述


                ECMAScript




   JavaScript                ActionScript
DOM :文档对象模型 (用于 HTML 的应用程序编程接口)
将页面映射多层节点结构 树状图




映射文档结构
DOM1
例如: Document 类型
DOM2
例如: Events 监听事件
(addEventListener,attachEvent)
Style 访问样式
(getComputedStyle,currentStyle)
DOM3
例如:加载保存,验证
BOM :浏览器对象模型
与浏览器之间的交互
•弹出
•移动、缩放、关闭浏览器窗口
•浏览器信息( navigator )
•location
•Screen
•Cookis
•自定义对象 XMLHttpRequest 和 ActionXObject


- 没有统一标准
变 量 (1)
类型: typeof 运算符
 • 用法、返回值
 • 常见类型:
   – number 、 string 、 boolean 、 undefined 、 object 、 funct
     ion
一个变量应该只存放一种类型的数据
变 量 (2)
数据类型转换
 • 例子:计算两个文本框的和
 • 显式类型转换 ( 强制类型转换 )
  – parseInt() 、 parseFloat()
  – NaN 的意义和检测
 • 隐式类型转换
  – == 、 ===
  – 减法
提问:
      NaN 的意义和检测

      alert(isNaN(NaN));

       alert(isNaN(10));

      alert(isNaN(‘10’))

      alert(isNaN(‘blue’))

      alert(isNaN(true))

      alert(isNaN(‘true’))
变 量作用域和闭 包
变量作用域(作用范围)
 • 局部变量、全局变量
什么是闭包
 •   子函数可以使用父函数中的局部变量
 •   之前一直在使用闭包
 •   网上对于闭包的定义
 •   释放
命名规 范 (1)

命名规范及必要性
 • 可读性— 能看懂
       —
 • 规范性— 符合规则
       —
匈牙利命名法
 • 类型前缀
 • 首字母大写
命名规 范 (2)

  类型      前缀       类型           实例
数组      a      Array      aItems
布尔值     b      Boolean    bIsComplete
浮点数     f      Float      fPrice
函数      fn     Function   fnHandler
整数      i      Integer    iItemCount
对象      o      Object     oDiv1
正则表达式   re     RegExp     reEmailCheck
字符串     s      String     sUserName
变体变量    v      Variant    vAnything
运 算符
算术: + 加、 - 减、 * 乘、 / 除、 % 取模
赋值: = 、 += 、 -= 、 *= 、 /= 、 %=
关系: < 、 > 、 <= 、 >= 、 == 、 === 、 != 、 !==
逻辑: && 与(且)、 || 或、 ! 否
运算符优先级:括号
相加的问题?
程序流程控制

判断: if 、 switch 、 ?:
循环: while 、 for
跳出: break 、 continue
什么是真、什么是假:( Boolean )
 • 真: true 、非零数字、非空字符串、非空对象
 • 假: false 、零和 NaN 、空字符串、空对
   象、 undefined
本课 知识 点
JS 组成,各部分功能
变量:定义、类型、 typeof 、转换、作用域
闭包简单概念
运算符
程序流程控制结构
命名规范
本课练习 (1)
基础
 • 用 typeof 查看 12 、 'abc' 和 document 的类型
 • 计算两个输入框中的数字之和
 • 放一个按钮,每次点击时,都弹出比上次大 1 的数字
   : 0,1,2,3,4...
 • 输入两个数字,弹出较大的值
 • 输入一个数字,判断是否是两位数
本课练习 (2)
必做
 • 简易网页计算器
2012 年 06 月 29 日

More Related Content

Similar to Javascript 培训第二节 基础上

前端基础知识回顾
前端基础知识回顾前端基础知识回顾
前端基础知识回顾Wu tianhao
 
潜力无限的编程语言Javascript
潜力无限的编程语言Javascript潜力无限的编程语言Javascript
潜力无限的编程语言Javascriptjay li
 
Excel函數進階班(北市政府公訓處) 2
Excel函數進階班(北市政府公訓處) 2Excel函數進階班(北市政府公訓處) 2
Excel函數進階班(北市政府公訓處) 2terry28853669
 
12, string
12, string12, string
12, stringted-xu
 
追风堂 Javascript
追风堂 Javascript追风堂 Javascript
追风堂 Javascriptminipeach
 
Erlang培训
Erlang培训Erlang培训
Erlang培训liu qiang
 
运维系统开发与Rails 3页面开发实践
运维系统开发与Rails 3页面开发实践运维系统开发与Rails 3页面开发实践
运维系统开发与Rails 3页面开发实践Li JianYe
 
建造与理解-用Python实现深度学习框架
建造与理解-用Python实现深度学习框架建造与理解-用Python实现深度学习框架
建造与理解-用Python实现深度学习框架ZhenChen57
 
ES5 introduction
ES5 introductionES5 introduction
ES5 introductionotakustay
 
所谓闭包
所谓闭包所谓闭包
所谓闭包ilovey4
 
Web设计 3 java_script初探(程序员与设计师的双重眼光)
Web设计 3 java_script初探(程序员与设计师的双重眼光)Web设计 3 java_script初探(程序员与设计师的双重眼光)
Web设计 3 java_script初探(程序员与设计师的双重眼光)ziggear
 
3, operators
3, operators3, operators
3, operatorsted-xu
 

Similar to Javascript 培训第二节 基础上 (20)

Sun java
Sun javaSun java
Sun java
 
getPDF.aspx
getPDF.aspxgetPDF.aspx
getPDF.aspx
 
getPDF.aspx
getPDF.aspxgetPDF.aspx
getPDF.aspx
 
前端基础知识回顾
前端基础知识回顾前端基础知识回顾
前端基础知识回顾
 
潜力无限的编程语言Javascript
潜力无限的编程语言Javascript潜力无限的编程语言Javascript
潜力无限的编程语言Javascript
 
Js培训
Js培训Js培训
Js培训
 
Excel函數進階班(北市政府公訓處) 2
Excel函數進階班(北市政府公訓處) 2Excel函數進階班(北市政府公訓處) 2
Excel函數進階班(北市政府公訓處) 2
 
12, string
12, string12, string
12, string
 
追风堂 Javascript
追风堂 Javascript追风堂 Javascript
追风堂 Javascript
 
jasmine入门指南
jasmine入门指南jasmine入门指南
jasmine入门指南
 
Erlang培训
Erlang培训Erlang培训
Erlang培训
 
运维系统开发与Rails 3页面开发实践
运维系统开发与Rails 3页面开发实践运维系统开发与Rails 3页面开发实践
运维系统开发与Rails 3页面开发实践
 
建造与理解-用Python实现深度学习框架
建造与理解-用Python实现深度学习框架建造与理解-用Python实现深度学习框架
建造与理解-用Python实现深度学习框架
 
ES5 introduction
ES5 introductionES5 introduction
ES5 introduction
 
前端测试
前端测试前端测试
前端测试
 
前端测试
前端测试前端测试
前端测试
 
Python變數與資料運算
Python變數與資料運算Python變數與資料運算
Python變數與資料運算
 
所谓闭包
所谓闭包所谓闭包
所谓闭包
 
Web设计 3 java_script初探(程序员与设计师的双重眼光)
Web设计 3 java_script初探(程序员与设计师的双重眼光)Web设计 3 java_script初探(程序员与设计师的双重眼光)
Web设计 3 java_script初探(程序员与设计师的双重眼光)
 
3, operators
3, operators3, operators
3, operators
 

More from liziqi7

Javascript 培训第五节 事件
Javascript 培训第五节 事件Javascript 培训第五节 事件
Javascript 培训第五节 事件liziqi7
 
Javascript 培训第四节 深入了解
Javascript 培训第四节 深入了解Javascript 培训第四节 深入了解
Javascript 培训第四节 深入了解liziqi7
 
Javascript 培训第七节 dom
Javascript 培训第七节 domJavascript 培训第七节 dom
Javascript 培训第七节 domliziqi7
 
Javascript 培训第三节 基础下
Javascript 培训第三节 基础下Javascript 培训第三节 基础下
Javascript 培训第三节 基础下liziqi7
 
Javascript 培训公开课 分享·学习
Javascript 培训公开课 分享·学习Javascript 培训公开课 分享·学习
Javascript 培训公开课 分享·学习liziqi7
 
Javascript 培训第一节 分享·学习javascript过程
Javascript 培训第一节 分享·学习javascript过程Javascript 培训第一节 分享·学习javascript过程
Javascript 培训第一节 分享·学习javascript过程liziqi7
 

More from liziqi7 (6)

Javascript 培训第五节 事件
Javascript 培训第五节 事件Javascript 培训第五节 事件
Javascript 培训第五节 事件
 
Javascript 培训第四节 深入了解
Javascript 培训第四节 深入了解Javascript 培训第四节 深入了解
Javascript 培训第四节 深入了解
 
Javascript 培训第七节 dom
Javascript 培训第七节 domJavascript 培训第七节 dom
Javascript 培训第七节 dom
 
Javascript 培训第三节 基础下
Javascript 培训第三节 基础下Javascript 培训第三节 基础下
Javascript 培训第三节 基础下
 
Javascript 培训公开课 分享·学习
Javascript 培训公开课 分享·学习Javascript 培训公开课 分享·学习
Javascript 培训公开课 分享·学习
 
Javascript 培训第一节 分享·学习javascript过程
Javascript 培训第一节 分享·学习javascript过程Javascript 培训第一节 分享·学习javascript过程
Javascript 培训第一节 分享·学习javascript过程
 

Javascript 培训第二节 基础上

  • 2. 刘遵强 | liuzunqiang@staff.hexun.com
  • 4. ECMA-262 规范定义的 ECMAScript 规定 : •语法 (标识符,注释 ,; ) •类型(数据类型) •语句( if/for ) •关键字( var ) •保留字( class,float,int ) •操作符( +-*/ ) •对象 (Math,Date) ECMAScript 就是对实现该标准规定的各个方面内容的语言的描述 ECMAScript JavaScript ActionScript
  • 5. DOM :文档对象模型 (用于 HTML 的应用程序编程接口) 将页面映射多层节点结构 树状图 映射文档结构 DOM1 例如: Document 类型 DOM2 例如: Events 监听事件 (addEventListener,attachEvent) Style 访问样式 (getComputedStyle,currentStyle) DOM3 例如:加载保存,验证
  • 6. BOM :浏览器对象模型 与浏览器之间的交互 •弹出 •移动、缩放、关闭浏览器窗口 •浏览器信息( navigator ) •location •Screen •Cookis •自定义对象 XMLHttpRequest 和 ActionXObject - 没有统一标准
  • 7. 变 量 (1) 类型: typeof 运算符 • 用法、返回值 • 常见类型: – number 、 string 、 boolean 、 undefined 、 object 、 funct ion 一个变量应该只存放一种类型的数据
  • 8. 变 量 (2) 数据类型转换 • 例子:计算两个文本框的和 • 显式类型转换 ( 强制类型转换 ) – parseInt() 、 parseFloat() – NaN 的意义和检测 • 隐式类型转换 – == 、 === – 减法
  • 9. 提问: NaN 的意义和检测 alert(isNaN(NaN)); alert(isNaN(10)); alert(isNaN(‘10’)) alert(isNaN(‘blue’)) alert(isNaN(true)) alert(isNaN(‘true’))
  • 10. 变 量作用域和闭 包 变量作用域(作用范围) • 局部变量、全局变量 什么是闭包 • 子函数可以使用父函数中的局部变量 • 之前一直在使用闭包 • 网上对于闭包的定义 • 释放
  • 11.
  • 12. 命名规 范 (1) 命名规范及必要性 • 可读性— 能看懂 — • 规范性— 符合规则 — 匈牙利命名法 • 类型前缀 • 首字母大写
  • 13. 命名规 范 (2) 类型 前缀 类型 实例 数组 a Array aItems 布尔值 b Boolean bIsComplete 浮点数 f Float fPrice 函数 fn Function fnHandler 整数 i Integer iItemCount 对象 o Object oDiv1 正则表达式 re RegExp reEmailCheck 字符串 s String sUserName 变体变量 v Variant vAnything
  • 14. 运 算符 算术: + 加、 - 减、 * 乘、 / 除、 % 取模 赋值: = 、 += 、 -= 、 *= 、 /= 、 %= 关系: < 、 > 、 <= 、 >= 、 == 、 === 、 != 、 !== 逻辑: && 与(且)、 || 或、 ! 否 运算符优先级:括号
  • 16. 程序流程控制 判断: if 、 switch 、 ?: 循环: while 、 for 跳出: break 、 continue 什么是真、什么是假:( Boolean ) • 真: true 、非零数字、非空字符串、非空对象 • 假: false 、零和 NaN 、空字符串、空对 象、 undefined
  • 17.
  • 18. 本课 知识 点 JS 组成,各部分功能 变量:定义、类型、 typeof 、转换、作用域 闭包简单概念 运算符 程序流程控制结构 命名规范
  • 19.
  • 20.
  • 21. 本课练习 (1) 基础 • 用 typeof 查看 12 、 'abc' 和 document 的类型 • 计算两个输入框中的数字之和 • 放一个按钮,每次点击时,都弹出比上次大 1 的数字 : 0,1,2,3,4... • 输入两个数字,弹出较大的值 • 输入一个数字,判断是否是两位数
  • 22. 本课练习 (2) 必做 • 简易网页计算器
  • 23.
  • 24. 2012 年 06 月 29 日