崔达文

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

JavaScript

 

 

一、 简介

 

Web开发:

 

1、 静态

Html

Css

Javascript

 

2、 动态

Asp

Jsp

Php

 

由客户端浏览器解析并执行--à静态的

由服务端解析并运行--à动态的

 

因为js由客户端浏览器解析并执行,所以不同的浏览器在对js进行解析时可能会有差异

IE

火狐

 

3、 什么是javascript

 

l JavaScript 是网景(Netscape)公司开发的一种基于客户端浏览器、面向(基于)对象、事件驱动式的网页脚本语言。

 

 

4、 主要功能

 

l 交互式操作

l 表单验证

l 网页特效

l Web游戏

l 服务器脚本开发

 

 

 

 

5、 javascript的快速入门

 

 

 

l JavaScript区分大小写

l JavaScript脚本程序须嵌入在HTML文件中

l JavaScript脚本程序中不能包含HTML标记代码

l 每行写一条脚本语句

l 语句末尾可以加分号

l JavaScript脚本程序可以独立保存为一个外部文件

 

6、 script标签

 

l 标签:<script></script>

l 属性:

 

language 脚本语言

src 加载位置

 

script标签表示嵌入一个语言的语句段

如果把js代码放到一个独立的js文件中,使用src属性将其引入进来

如果一对script标记引用了外部的js文件,那么,就不要在这对标记之间写js代码

如果写了js代码,就不能引用外部文件

 

如果是引用外部js文件的代码,或是对函数或类的定义的js代码可以考虑放在head标签之间

 

其它普通的js代码放在body标签之间

 

 

二、 Js语法

 

1、 变量

 

l 变量是用来临时存储数值的容器,变量存储的数值是可以变化的

l 变量必须要先声明才能使用,使用var声明变量

使用var声明的变量是局部的

没有使用var声明的变量是全局的

l 变量的命名规则:第一个字符必须是英文字母,或者是下划线(_);其后的字符,可以是英文字母,数字,下划线;变量名不能是JavaScript的保留字

A

A1

A_1

_a1

错误的:1a

l 变量的作用域:全局变量、局部变量

 

2、 数据类型

 

l String :字符串类型

l Number :数字类型

l Boolean :布尔型   true  false

l Undefined :未必定义类型

l Null :空类型

 

l Object :对象数据类型

 

 

3、 运算符

 

l 算术运算符

+

-

*

/

%

++    

--

i++ :先运算,再自加

++i:先自加,再运算

l 比较运算符

>

>=

<

<=

!=

==

=== :全等于

!== :不全等于

 

l 逻辑运算符

&& :逻辑与   符号两边都为真,结果为真

|| :逻辑或 符号两边有一个为真,结果为真

:取反 真时为假,假时为真

l 赋值运算符

:赋值

+=   

-=

*=

/=

%=

以上5个运算符是表示将符号左边的与右边的进行运算再赋值给左边的

i+=j

i=i+j;

 

 

l 字符串运算符

+

+=

 

4、 流程控制

 

1)顺序结构

代码一行接着一行执行

2)分支结构

If

If elseif else

Switch

 

 

 

 

3)循环结构

 

l for循环

 

l while循环

 

l do……while循环

 

l for……in循环

 

 

 

对循环流程总结:

 

1) 在已知循环次数基础上,可以考虑使用for循环

2) 如果循环次数是未知道的,可以考虑使用whiledo..while循环

3) While循环是先判断再执行

4) Do…while循环是先执行再判断

5) Do…while循环至少执行一次

6) While循环次数是未知的

 

 

5、 跳出循环

 

l continue:跳出本次循环

l break :跳出整个循环

 

输出0-9

 

 

输出0-2

 

 输出0-3

 

 

 

6、 练习题:

有一物,不知道其数,

三三数之余二

五五数之余三,七七数之余二,问物几何?

 

 

三、 函数

FUNCTION:作用

代码重复性使用

模块化编程

函数分为两种:

 

系统函数 :系统定义的

自定义函数 :程序员定义的

 

1、 关于自定义函数的语法:

 

l 使用函数前要先定义才能调用

l 函数定义有三个部分:函数名,参数列表,函数体

l 定义函数的格式

function 函数名([参数1(形参),参数2...(实参 )])

{

函数执行部分;

return 表达式;

}

 

调用语法:

 

函数名(实参列表);

 

 

 

 

现在,我们对程序进行修改

 

现在我们只能对别人打招呼,但是我想可以针对不同的人,说不同的话

 

 

 

现在,我们再对程序进行改进

 

在函数的定义的内部,我们不建议大家直接写输出语句,因为这样会打乱网页原有布局,怎么解决这个问题?

 

答:返回值

 

在函数内部,我们只负责进行逻辑计算,至于值的处理交给“调用的人”

输出返回值

 

 

 

2、 关于参数的问题

 

 

 

对象传递仍然是地址传递。

3、 传值和传地址的区别

 

 

 

4、 arguments属性

 

l arguments是函数的参数数组列表

 

 

l 使用arguments属性在定义函数的时候无须指明函数的参数列表,在函数调用时可以任意填充

 

l 实现一个函数的多种功能

 

 

 

举个例子:

 

现在,我想写个函数计算工人工资的总和

 

Display(10000,5000,2500);

 

 

 

 

 

四、 Js消息框

 

l alert(str)  提示框 //模式对话框

str:提示语

l confirm(str) 确认框

str:提示语

confirm方法会有一个返回值,为布尔型,如果用户点击确定按钮,返回值为true

如果用户点击取消按钮,返回值为false

If (flag==true)

else

l Prompt(str,default) 输入框 //基本不用

Str:提示信息

Default:默认值

 

这个函数的返回值是用户输入的内容

//以上三个函数是window下方法,写全了,是window.+

 

 

 

 

猜数小游戏

 

当我们打开页面时,会得到一个随机数1—500之间,弹出一个输入框让用户输入,如果用户输入的数大了,弹出消息框,提示太大了,反之提示太小了,然后再重新弹出一个输入框

 

 

五、 Javascript中的常用类

 

1、 字符串类String

不带括号是属性,带括号是方法

 

l length   :字符串长度

l indexOf(string) :返回要查询的字符串出现的位置,如果没出现,返回值为-1// 小于等于0没出现,大于等于0出现

l substr(num1,[num2])  :截取字符串  位置从0开始

l toLowerCase() :转换为小写

l toUpperCase() :转换为大写

l replace(str1,str2) :替换

 

 

2、 日期类Date

 

l getYear() 返回年份(2位或4位)

l getFullYear() 返回年份(4位)   

l getMonth() 返回月份  0-11 一定要+1看得才正常

l getDate()     返回日期 1-31

l getDay() 返回星期数 0-6

l getHours() 返回小时数 0-23

l getMinutes() 返回分钟数 0-59

l getSeconds() 返回秒数 0-59

l getMilliseconds() 返回亳秒数0-999

Js 实在客户端解析,如果访问别人的文件,是自己的时间

 

 

 

 

3、 数学类Math

 

l ceil(数值) :取得大于或等于该数的最小整数

l floor(数值) :取得小于或等于该数的最大整数

l min(数值1,数值2) :取得最小数

l max(数值1,数值2)  :取得最大数

l pow(数值1,数值2)  :取得数值1的数值2次方 23次方

l random()  :取得随机数 (0----1之间的小数)

l round(数值) :四舍五入

l sqrt(数值 :开平方根

 

Math类下的方法全是静态方法

 

 

 

面向对象的方法math.函数名

Php

对象->属性;

对象->方法();

 

Js

对象.属性

对象.方法();

 

六、 定时器

 

延迟多少秒之后执行

 

打开窗口时立即弹出消息框

打开窗口之后延迟三秒之后弹出

 

1、 格式:

 

setTimeout(“执行语句”,延迟秒数);

执行语句:要执行的代码

延迟秒数:多少秒之后执行前面指定的代码,单位:毫秒

 

[对象名]=setTimeout(“函数”,延迟秒数);

 

2、了解定时器

 

3、加点难度

 

我希望每过三秒弹出一次”欢迎您”

 

 

 

4、 做一个时间效果

 

写一个文本框,在文本里显示当前时间

 

 

 

 

 

 

5、 清除定时器

 

l 格式:

 

clearTimeout(定时器对象名);

 

当我们执行setTimeout方法时,可以定义一个变量接收该方法的返回值,

这个返回值表示抛出的定时器对象

 

然后,如果我们不想让这个定时器对象执行,可以调用clearTimeout方法将其删除

 

 

 

 

七、 document初步了解

 

document:文档对象   window对象的子对象

 

document.getElementById(id);

通过id属性获取某个html元素--àdom对象

 

对象名.innerHTML:表示这对标签之间的内容 (如果有标签,则解析)

 

对象名.innerText :表示这对标签之间的内容 (原样输出)(在有些浏览器里对这个属性不支持)

 

 

 

 

 

 

有一个村子,有50户人家,每户人家一只狗,现在流行狗病,大家开始杀狗

 

每个人允许看别人家的狗有没有病

但不能看自己家的狗有没有病

 

每个人不能杀别人家的狗

但可以杀自己的狗

 

第一天…..

第二天….

第三天,传来几声枪响

posted on 2016-01-30 12:32  崔达文  阅读(185)  评论(0编辑  收藏  举报