标签:
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) 如果循环次数是未知道的,可以考虑使用while和do..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次方 2的3次方
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户人家,每户人家一只狗,现在流行狗病,大家开始杀狗
每个人允许看别人家的狗有没有病
但不能看自己家的狗有没有病
每个人不能杀别人家的狗
但可以杀自己的狗
第一天…..
第二天….
第三天,传来几声枪响
标签:
原文地址:http://www.cnblogs.com/cuidawen/p/5170851.html