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


Posted in Javascript onDecember 16, 2009

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)通过数据库,实现两个下拉框的联动(无刷新)

Javascript 相关文章推荐
javascript编程起步(第四课)
Jan 10 Javascript
js propertychange和oninput事件
Sep 28 Javascript
js运动动画的八个知识点
Mar 12 Javascript
javascript实现Table间隔色以及选择高亮(和动态切换数据)的方法
May 14 Javascript
跟我学习javascript的浮点数精度
Nov 16 Javascript
微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换
Nov 25 Javascript
js实现简单的计算器功能
Jan 16 Javascript
详解axios在node.js中的post使用
Apr 27 Javascript
BootStrap 标题设置跨行无效的解决方法
Oct 25 Javascript
vue基础之v-bind属性、class和style用法分析
Mar 11 Javascript
微信公众号开发之微信支付代码记录的实现
Oct 16 Javascript
javascript canvas实现雨滴效果
Jun 09 Javascript
JavaScript 解析Json字符串的性能比较分析代码
Dec 16 #Javascript
TextArea 控件的最大长度问题(js json)
Dec 16 #Javascript
比较详细的关于javascript 解析json的代码
Dec 16 #Javascript
JQuery读取XML文件数据并显示的实现代码
Dec 16 #Javascript
js实现页面打印功能实例代码(附去页眉页脚功能代码)
Dec 15 #Javascript
jQuery 渐变下拉菜单
Dec 15 #Javascript
多浏览器兼容的获取元素和鼠标的位置的js代码
Dec 15 #Javascript
You might like
php异常处理方法实例汇总
2015/06/24 PHP
PHP经典算法集锦【经典收藏】
2016/09/14 PHP
php注册和登录界面的实现案例(推荐)
2016/10/24 PHP
JQuery 构建客户/服务分离的链接模型中Table分页代码效率初探
2010/01/22 Javascript
基于jQuery的的一个隔行变色,鼠标移动变色的小插件
2010/07/06 Javascript
使用Javascript接收get传递的值的代码
2011/11/30 Javascript
原生javascript实现无间缝滚动示例
2014/01/28 Javascript
javascript中var的重要性分析
2015/02/11 Javascript
jQuery实现获取绑定自定义事件元素的方法
2015/12/02 Javascript
AngularJS表格详解及示例代码
2016/08/17 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
2016/12/13 Javascript
jQuery插件Echarts实现的渐变色柱状图
2017/03/23 jQuery
Vue+webpack+Element 兼容问题总结(小结)
2018/08/16 Javascript
vue forEach循环数组拿到自己想要的数据方法
2018/09/21 Javascript
axios 封装上传文件的请求方法
2018/09/26 Javascript
ES6入门教程之Array.from()方法
2019/03/23 Javascript
解决vuex刷新状态初始化的方法实现
2019/08/15 Javascript
浅析TypeScript 命名空间
2020/03/19 Javascript
TypeScript的安装、使用、自动编译的实现
2020/04/10 Javascript
Python numpy实现数组合并实例(vstack,hstack)
2018/01/09 Python
快速了解Python中的装饰器
2018/01/11 Python
Flask 让jsonify返回的json串支持中文显示的方法
2018/03/26 Python
Flask实现跨域请求的处理方法
2018/09/27 Python
python实现图片转字符小工具
2019/04/30 Python
Python read函数按字节(字符)读取文件的实现
2019/07/03 Python
浅析python 通⽤爬⾍和聚焦爬⾍
2020/09/28 Python
市场开发与营销专业求职信
2013/12/31 职场文书
决心书标准格式
2014/03/11 职场文书
股东合作协议书
2014/04/14 职场文书
爱国演讲稿500字
2014/05/04 职场文书
财务负责人任命书
2014/06/06 职场文书
小区推广策划方案
2014/06/06 职场文书
应届大专生求职信
2014/06/26 职场文书
语文教师个人工作总结
2015/02/06 职场文书
2015年护士节慰问信
2015/03/23 职场文书
SONY AN-LP1 短波有源天线放大器图
2022/04/05 无线电