javascript 语法基础 想学习js的朋友可以看看

来源:互联网 发布:阿里云邮企业版下载 编辑:程序博客网 时间:2024/04/30 07:22
1:javascript区分大小写 
2:javascript每一条语句必须以";"结束,与C语言一样 
3:输出:document.write("字符串")--->还可以输出对应的html标记 
4:改变窗体的颜色document.bgColor="red"; 
4:类型转换:parseInt,parseFloat 
5:随机函数:parseInt(Math.random()*90+10) 产生10--100的随机数 
5:弹出对话框:alert("提示的内容") 
5:if if...else,for,while,switch case 
5:如何定义数组: 
1)一维数组: 
a=new Array();[定义数组时不需要指定长度] 
a[0]=1; 
a[1]=1; 
a[2]=1; 
s=0; 
for(i=0;i<a.length;i++) 
{ 
s+=a[i]; 
} 
2)二维数组: 
city=new Array(); 
city[0]=new Array("湖北省","武汉"); 
city[1]=new Array("湖北省","仙桃"); 
city[2]=new Array("湖北省","洪湖"); 
city[3]=new Array("福建省","广州"); 
city[4]=new Array("福建省","厦门"); 
city[5]=new Array("福建省","漳州"); 
5:javascript里面的函数,及函数的调用,以及变量的作用范围 
6:弹出询问对话框:confirm("询问的内容") 
7:关闭窗体:window.opener=null;window.close(); 
8:打开一个窗体: 
1)变量名=window.open("网页名") 开一个新窗口 
2)变量名=window.open("网页名","名字","height=200px,width=300px") 
3)打开窗口在屏幕中心弹出 
t=window.open('dotest.htm','test','height=400px,width=500px'); 
t.moveTo((screen.width-500)/2,(screen.height-400)/2; 
4)window.location="url" 不会打开一个新窗口 
5)以模态窗体弹出 
window.showModalDialog('dotest.htm','','dialogWidth=600px;dialogHeight=500px'); 
9:刷新一个窗体: 
window.location.reload(); 
10:得到本窗体的表单元素的值:表单名.元素名.value 
11:如何在另外一个窗体中来访问前一个窗体的表单元素 
A:模态窗体: 
源窗体 
1)window.showModalDialog('dotest.htm',window,'dialogWidth=600px;dialogHeight=500px'); 
注意名字一定要写上window 
2)window.dialogArguments.form1.txtuser.value 
B:非模态窗体: 
源窗体: 
window.open 
目的窗体: 
window.opener.表单名.表单元素名.value 
12:如何通过模态窗体向父窗体返回值: 
源窗体: 
t=window.showModalDialog(参数) 
alert(t) 
目的窗体: 
window.returnValue=值;window.opener=null;window.close(); 
13:如何在关闭子窗体的同时,刷新父窗体 
A)非模态窗口 
源页面: 
window.open("页面") 
目的页面: 
window.opener.location.href=window.opener.location.href; 
window.opener=null;window.close(); 
B)模态窗口 
源页面: 
window.showModalDialog();-------有暂停代码的用途 
window.location.reload(); 
目的页面: 
window.opener=null;window.close(); 
14:设置状态栏文字:window.status 
15)转换字符串为数值:parseInt("字符串"),parseFloat("字符串") 
16)得到当前的时间 
var date=new Date(); 
document.write(date.toLocaleTimeString()); 
17):得到当前的日期: 
var date=new Date(); 
document.write(date.toLocaleDateString()); 
18):回到上一个页面。注意不是刷新 
history.go(-1) 
19:改变某个对像的背景色 
this.style.backgroundColor='yellow', 
this.style.color='文字颜色' 
20:设为首页: 
this.style.behavior='url(#default#homepage)';this.setHomePage('你的网页'); 
21):指定让代码过几分钟后自动反复执行某个过程. 
setInterval("js代码",1000) 
举例:让一个背景不断变换[页面闪得很厉害] 
var index=1; 
function ChangePic() 
{ 
form1.p1.src=index+".jpg"; 
index=index+1; 
if (index==4) 
{ 
index=1; 
} 
} 
setInterval("ChangePic(index)",1000); 
改进:[先定义数组,把图片预装在内存中] 
pic=new Array(4); 
pic[0]=new Image(); 
pic[1]=new Image(); 
pic[2]=new Image(); 
pic[3]=new Image(); 
pic[0].src="1.jpg"; 
pic[1].src="2.jpg"; 
pic[2].src="3.jpg"; 
pic[3].src="4.jpg"; 
function ClearText() 
{ 
form1.p1.src=pic[index].src; 
index=index+1; 
if (index==4) 
{ 
index=1; 
} 
} 
setInterval("ClearText(index)",1000); 
23):让指定的代码在多少时间之后执行,但只执行一次: 
setTimeout("js代码",1000); 
24):清空一个表单中的所有文本框的文本 
for(i=0;i<form1.elements.length;i++) 
{ 
if (form1.elements[i].type=="text") 
{ 
form1.elements[i].value=""; 
} 
} 
25)运行一个可执行文件: 
obj=new ActiveXObject("wscript.shell"); 
obj.run("calc.exe"); 
26)Java script中的事件 
A)onmouseove:鼠标到达 
B)onmouseout:鼠标离开事件 
C)onclick:单击事件 
D)onKeypress:键被按下时,可以通过event.keyCode得到按下键的Asii码 
E)load事件:把代码直接写在<script></script>就相当于Load事件 
F)onsubmit:当表单提交时会触发表单提交事件 
原理:当用户按下提交按钮时,会触发表单的onsubmit事件。在这个事件里面根据用户返回 的值(true,false)来决定是否需要提交表单,为true时会提交,为false不会提交所 以我们经常会用一个函数来进行数据验证。 
举例: 
1)<marquee scrollamount=3 onmouseover=this.stop(); onmouseout=this.start();>文字移动 
2)<input type=text name=txtPostalCode onKeypress="if (event.keyCode < 45 || event.keyCode > 57) event.keyCode=0;">//只能输入数字 
3)使表格的选中的行出现不同的颜色 
4)阻止用户往文本框里面输入值: 
onkeypress="reuturn false" 
说明:在表单元素的任何事件中,只要加上return false就不会触发此事件 
25:正则表达式: 
像dos里面的通配符一样,用来检测一个输入是否满足特定的通配符 
^:代表一行字符的开头 
$:代表一行字符的结束 
[]:用来定义可接受的字符 
[a-z]:表示可以接受小写字母 
[A-Z]:表示可以接受大写字母 
[0-9]:表示可以接受数字 
[0-9,_,a]:表示可以接受数字,下划线或字母a 
[a-zA-Z0-9]:表示既可以接受英文字母,又可以接受数字 
[^]:不能接受的字符 
[^a-z]:不能接受英文字母 
{}:用来定义必须输入的字符个数 
{3}:必须含有3个字符。 
{4,8}:至少含有4个至多含有8个字符 
[0-9]{3}:必须输入3个数字 
[a-zA-Z]{4,6}:必须输入4到6位英文字母 
{n,}:表示至少可以输入n个字符。 
[a-z]{0,}:表示可以接受0个或多个英文字母 
[a-z]{1,}:表示可以接受至少1个英文字母 
+:匹配前面字符的1次或多次-----相当于{1,} 
*:匹配前面字符的0次或多次-----相当于{0,} 
.:表示任意字符 
举例: 
frm1.user.value.match("^[0-9a-zA-z]{5,8}$") 
26:如何利用Js对表单元素进行控制: 
A:文本框: 
1)得到文本框的文本: 
表单名.表单元素名.value 
2)获得焦点: 
表单名.表单元素名.focus() 
B:按钮: 
1)使按钮不可用: 
表单名.按钮名.disabled=true (true,不可用;false 可用) 
2)使按钮不可见: 
表单名.按钮名.style.display="none" 不可见 
表单名.按钮名.style.display="" 可见 
if (表单名.按钮名.style.display=="") 如果可见 
C)单选框: 
得到单选框所选中的值 [各个单选框的名称一定要一样,值不一样] 
for(i=0;i<单选框数组.length;i++) 
if (单选框数组[i].checked) break; 
返回 单选框数组[i].value就行了 

D):得到所有打勾的复选框的值 
for(i=0;i<复选框数组.length;i++) 
if (复选框数组[i].checked) 执行对应的语句 
E):下拉框 
A)得到所选中的值-->下拉框.value 
B)删除里面的全部内容----->下拉框.length=0; 
C)删除里面的指定项--->下拉框.options.remove(下标); 
D)往里面添加一项----->下拉框.options[下拉框.length]=new Option("标签","值"); 
注意下拉框的options是一个数组,用来存储所有选择,下标是从零开始的 
E)selectedIndex:得到或设置所选中的项的下标 
F)options[k].value:得到第i项的值 
G)onchange事件:当选中项发生改变时,触发 

举例:在客户端实现两个下拉框的联动[注意定义一维数组] 
city=new Array(); 
city[0]=new Array("湖北省","武汉"); 
city[1]=new Array("湖北省","仙桃"); 
city[2]=new Array("湖北省","洪湖"); 
city[3]=new Array("福建省","广州"); 
city[4]=new Array("福建省","厦门"); 
city[5]=new Array("福建省","漳州"); 
27:创建一个模块的js的文件,然后在页面中来调用 
A)直接新建一个*.js文件: 
直接写上函数,不用加<script type="text/javascript">标记 
B)在目的页面中通过:<script src="JScript.js" type="text/javascript"></script>来引用 
28:多个对像共享同一个事件: 
<script type="text/javascript" for="TabItem" event="onmouseover"> 
var TabItem=document.getElementsByName("TabItem"); 
for(i=0;i<TabItem.length;i++) 
{ 
if (TabItem[i]==this) 
{ 
TabItem[i].background="images/nh-bg.gif"; 
} 
else 
{ 
TabItem[i].background=""; 
} 
} 
</script> 

第四章:C#.net语法基础 
在这一章中,你将要学习以下一些内容 
1:编写asp.net语言的选择 
2:vs.net 2005 界面技巧 
3:如何在页面中加入服务器端代码 
4:如何在页面中导入命名空间 
5:C#.net语法基础 
6:动态的由服务器端向客户端加入javascript 


编写asp.net语言的选择: 

编写asp.net程序,net为我们提供了以下几种语言vb.net,c#.net,j#.net其中vb.net语言是最简单,最容易学的语言,它继承了vb的大部分语法,同时又加入了一整套.net framework,利用vb.net开发asp.net程序是最容易的一门的语言C#.net是整个.net的核语言,它继承了c,c++的大部分语法,较vb.net有点复杂,但是执行程序的效率比vb.net更高,j#.net是继承了javascript的大部分语法,一般很少用。我们选择C#.net语言作来开发asp.net程序的语言 

vs.net 2005 界面技巧 
1)设置显示解决方案---------:工具--选项-->项目和解决方案-->常规 
2)对单网页可以进行生成,不需要对整个项目进行生成 
3)设计模式与源文件模式(html模式),后代码模式(类),让页面一加载时自动显示设计模式 
4)文档大纲窗口:可以清楚层现html标签的层次关系:视图-->其它窗口--->文档大纲 
5)Html标签导航:切换到源文件模式,单右-->选择最下面的"选中html标签" 
6)源文件模式下控件拖曳 
7)多文档页面显示------ctrl+tab可以在不同文档之间切换 
8)Asp.net网站特殊文件夹: 
A:App_Code用来存放代码文件(比如:*.cs,类文件) 
B:App_Date用来存放网站数据文件(数据库文件,xml文件等) 
C:还有很多其它的特殊文件夹 
9)程序代码重构: 
A:重构属性 
B:重构方法 
10)Asp.net网站的动态编译: 
A:当asp.net第一次运行时,IIs会自动为asp.net生成一个dll,所以第一次非常慢 
以后只要文件的内容的没有发生改变,IIs就会延用上一次生成的dll,不会再次生成 
新的dll,所以第一次运行慢,以后运行快 
B:如果asp.net的源文件内容一旦发生改变,则IIs会重新生在一个dll,利用这个特点 
我们可以在vs.net环境中写程序,而在IIs中直接打开网站后刷新即可 

如何在页面中加入服务器端代码 
C#.net只能被服务器端的IIS来编译执行,所以C#.net语言是一定要运行于服务器端 
A:直接把代码加入"后代码文件"的事件里面[采用CodeBehind] 
B:直接把代码加入"页面文件"里面此时一定要加<% %>来限制 [采用CodeBeside] 
1)如果是单纯的C#代码,可以直接用<%%>括起来,并且可以有多个<%%> 
2)如果是函数,则一定要紧跟在<%page %>命令符下面,并按照如下的格式: 
<script language="C#" runat="server"> 
private int sum(int a, int b) 
{ 
return a + b; 
} 
</script> 
3)如果要得到一个变量的值,可以写上<%=变量名%> 
比如: 
今天是:<%=System.DateTime.Today.ToLongDateString() %> 

如何在页面中导入命名空间 
1)在代码文件中:使用using语句 
2)在页面文件中:使用<%@ Import 语句比如: 
<%@ Import Namespace="System.Data.SqlClient" %> 
位置在<@ page> 的下面 


C#.net的语法基础 
C#.net的数据类型: 
Int,Double,String,Char,object数据类型(相当于vb里面的变体类型) 
定义变量: 
类型标识符 变量名; 
给变量赋初值: 
可以在定义的时候,给变量赋初值---Int a=5; 
也可以在定义之后,给变量赋初值 
运算符: 
a):赋值运算符:= 
b):算术运算符:+,-,*,\(整除),%(余) 
c):字符串联接符:+ 
d):关系运算符:>,>=,<,<=,== 
e):逻辑运算符:&&,||,! 
f):复合运算符:x+=3,x*=6等 

asp.net的输入和输出: 
a):输出 
1):输出单纯的字符串: response.write("字符串"); 
2):输出html标记:response.write("html标记")[重要重要] 
比如:Response.Write("<a href='C:\WINNT\Web\Wallpaper\城堡.jpg'>我的链接</a>") 
3):输出js脚本:Response.Write("<script>js代码</script>"); 
4):输出当前的日期和时间: 
Response.Write(DateTime.Now.ToLongTimeString()):时间 
Response.Write(DateTime.Now.ToLongDateString()):日期 
b):输入:利用控件进行输入比如:textbox控件等 

if 语句,select case语句 
举例: 
A)让用户输入两个数和一个操作符,求出运算结果 
B)让用户输入三门功课求出平均分和总分并根据求出的结果判断优,良,差 
C)根据星期把对应的背景图片换成是"星期"的图片 

循环语句:for,while循环 
举例: 
A)输出Moon1.gif~Moon8.gif这几个文件里面的图片 
B)利用表格打印九九乘法表 
C)实现掷骰子游戏 
7:数组: 
1):声明与初始化 
静态数组的声明与初始化: 
string[] NameList = new string[6]; 
进行初始化 
string[] NameList=new string[5] {"张三","李四","王五","赵六","王七"}; 
动态数组的初始化: 
string[] NameList=new string[] {"张三","李四","王五","赵六","王七"}; 
2):数组.length:用来读出数组的长度 
举例: 
A)定义姓名,语文,数学,化学数组,通过函数与表格求出总分与平均分 
B)利用数组和表格打印出一些商品的列表清单 

8:哈希表(HashTable):是一种两栏数据结构。一栏是键(Key),一栏是值(Value) 
创建哈希表: 
Hashtable has = new Hashtable(); 
添加数据: 
has.add("键",值) 
获得指定键的值 
has["键"] 
检查是否已经存在某个键 
has.ContainsKey("键") 
删除某个键 
has.Remove("键") 
清除全部键 
has.clear(); 
访问哈希表的内容: 
Hashtable ht = new Hashtable(); 
foreach (DictionaryEntry item in ht) 

26:动态的向服务器(web控件)加入客户端的javascript[重要] 
以前的方法都是根据事先写好的函数,然后再向客户端去调用,但有时候,可能需要服务器 
端传来的数据,再在客户端进行处理,这个时候就要动态的向客户端添加代码 
方法: 
在Page_Load事件里面写上: 
1:RegisterClientScriptBlock("chen", js)方法来注册js 
2:IsClientScriptBlockRegistered("chen")方法来检验些js是否已经注册,从而 
可以避免一个js被反复注册 
举例: 
1)从数据库里面读出职工信息,放入客户端的js中。形式如: 
Worker=new Array() 
Worker[0]=new Array('张三','BM1'); 
Worker[1]=new Array('李四','BM1'); 
Worker[2]=new Array('王五','BM2'); 
Worker[3]=new Array('赵六','BM2'); 
2)通过数据库,实现两个下拉框的联动(无刷新)
2 4
原创粉丝点击