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 相关文章推荐
Open and Print a Word Document
Jun 15 Javascript
javascritp实现input输入框相关限制用法
Jun 29 Javascript
checkbox 复选框不能为空
Jul 11 Javascript
apycom出品的jQuery精美菜单破解方法
Feb 18 Javascript
Node调试工具JSHint的安装及配置教程
May 27 Javascript
JavaScript实现点击单元格改变背景色的方法
Feb 12 Javascript
jQuery获得字体颜色16位码的方法
Feb 20 Javascript
json与jsonp知识小结(推荐)
Aug 16 Javascript
JavaScript实现数组全排列、去重及求最大值算法示例
Jul 30 Javascript
vue踩坑记录之数组定义和赋值问题
Mar 20 Javascript
微信小程序地图导航功能实现完整源代码附效果图(推荐)
Apr 28 Javascript
vue elementUI 表单校验的实现代码(多层嵌套)
Nov 06 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&amp;mysql(四)
2006/10/09 PHP
PHP遍历二维数组的代码
2011/04/22 PHP
PHP生成随机数的方法总结
2018/03/01 PHP
js实现杯子倒水问题自动求解程序
2013/03/25 Javascript
jquery 取子节点及当前节点属性值
2014/07/25 Javascript
jquery实现textarea 高度自适应
2015/03/11 Javascript
js实现登录验证码
2016/12/22 Javascript
基于JS实现网页中的选项卡(两种方法)
2017/06/16 Javascript
详细AngularJs4的图片剪裁组件的实例
2017/07/12 Javascript
初学node.js中实现删除用户路由
2019/05/27 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
[14:20]刀塔大凶女神互压各路奇葩屌丝
2014/05/16 DOTA
使用Node.js和Socket.IO扩展Django的实时处理功能
2015/04/20 Python
在Python中使用lambda高效操作列表的教程
2015/04/24 Python
python简单判断序列是否为空的方法
2015/06/30 Python
Python3使用requests登录人人影视网站的方法
2016/05/11 Python
Pandas 对Dataframe结构排序的实现方法
2018/04/10 Python
mac安装scrapy并创建项目的实例讲解
2018/06/13 Python
Python内置类型性能分析过程实例
2020/01/29 Python
Python编写memcached启动脚本代码实例
2020/08/14 Python
用pip给python安装matplotlib库的详细教程
2021/02/24 Python
CSS的pointer-events属性详细介绍(作用和注意事项)
2014/04/23 HTML / CSS
伊利莎白雅顿官网:Elizabeth Arden
2016/10/10 全球购物
中兴通讯全球官方网站:ZTE
2020/12/26 全球购物
中医药大学毕业生自荐信
2013/11/08 职场文书
金融专业大学生职业生涯规划范文
2014/01/16 职场文书
小学生安全保证书
2014/02/01 职场文书
小学英语教学反思案例
2014/02/04 职场文书
高中毕业生登记表自我鉴定范文
2014/03/18 职场文书
网络技术专业求职信
2014/05/02 职场文书
餐饮服务食品安全责任书
2014/07/25 职场文书
2014年煤矿工作总结
2014/11/24 职场文书
早恋主题班会
2015/08/14 职场文书
2016年心理学教育培训学习心得体会
2016/01/12 职场文书
python简单验证码识别的实现过程
2021/06/20 Python
Python+Selenium实现抖音、快手、B站、小红书、微视、百度好看视频、西瓜视频、微信视频号、搜狐视频、一点号、大风号、趣头条等短视频自动发布
2022/04/13 Python