有一段时间没有更新自己的博客了,今天终于可以抽出时间和大家分享一下关于JavaScript了。有很多朋友在问我没有接触过会不会很难,不好理解

其实JavaScript的基本语法和Java的基本语法很相似,找到语法的不同点可以加快掌握知识的速度。我们步入正题!

 

JavaScript的优点:

   一丶客户端表单验证

      网站中,常常会遇到注册的页面,如果某项信息我们输入错误(如:昵称不合法,密码长度不符合等等...)表单页面将及时给出错误提示。这些错误

在没有提交到服务器之前,由客户端提前进行验证,称为客户端表单验证!

   二丶页面动态效果

      在JavaScript中我们经常会编写鼠标的响应事件代码,创建出动态的页面特效,从而有效的控制页面的内容,从而增加客户端的体验,从而使网站更

加有动感,有魅力!

JavaScript的概述:

1.JavaScript主要用来向HTML页面添加交互行为

2.JavaScript是一种脚本语言,语法和Java相似

3.JavaScript一般用来编写客户端的脚本

4.JavaScript是一种解释性语言,边执行边解释

JavaScript的基本结构:

//语法如下
<script type="txt/Javascript">

     //JavaScript代码

</script>

 

JavaScript的变量和赋值:

 

 

 

 

 

 

//声明变量并赋值
var width  = 20;
//声明多个变量的同时用逗号 “,”隔开
var  x, y, z = 50;

 

补充一点:JavaScript区分大小写!!!所以大小写不同的变量名代表不同的变量!同样JavaScript中的关键字不允许作为变量名和函数名!,不知道JavaScript中

的关键字的朋友可以去差相关的文档,这里就不一个一个的给大家补充了!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

//创建数组的语法
var  数组名称   =   new  Array (size );
//为数组中元素赋值
var fruit = new  Array  ("Apple","Peach","Orange");
//第二种赋值方式
var fruit = new  Array(4);
fruit [0] = "apple";
fruit [1] = "Peach";
fruit [2] = "Orange";
//定义一个数组还可以使用“{”,“}”来定义
var fruit={"Apple","Peach","Orange"};

 

2.数组的属性和方法:

类别 名称 描述
属性 length 设置或返回数组中元素的数目
方法 join() 把数组的所有元素放入一个字符串,通过一个分隔符进行分割
sort() 对数组排序
push() 向数组末尾添加一个新的元素,并返回新的长度

 

 

 

 

 

 

 

 

3.运算符

类别 运算符号
算术运算符 +,-,*,/,%,++,--
比较运算符 >,<,>=,<=,==,!=
逻辑运算符 &&,||,!
赋值运算符 =

 

 

 

 

 

4.逻辑逻辑控制语句:

javascript中的逻辑控制语除  for - in循环其余都与java中一样,所以只讲解for-in循环

//语法
  for (变量  in 数组)  {

    //JavaScript语句;

}
//其中变量为数组的索引下标例如:
var fruit = {"apple","peach","orange"};

for(var i in  fruit){
document.write(fruit[i])
}

//同java一样,在循环中用来终止循环的有  break和continue

5.输入输出:

//警告(alert),该对话框有一个字符串和一个确定按钮


alert ("提示信息")

//提示(prompt)会弹出一个提示对话框,等待用户输入一行数据


prompt("提示信息","输入框的默认信息")

结合以上所讲要在浏览器中怎么做到以下效果:

代码如下:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>统计a与A的字符串的个数</title>
   <script type="text/javascript"> 
       var country = new Array("America", "Greece", "Britain", "Canada", "China", "Egypt");
       //定义一个变量保存统计的值
       var count = 0;
       document.write('在以下字符中:' + "<br/>");
       //循环打出数组里的值
     
       for (var i in country)
       {
           document.write(country[i] + "<br/>");
           if(country[i].indexOf('a')!=-1||country[i].indexOf('A')!=-1)
           {
               count++
           }
          
       }
       document.write('共有' + count + '个字符串中包含a或A');

     
       
       
     
   </script>
</head>
<body>

JavaScript函数:

//常用的系统函数
parseInt()           //解析一个字符串并返回一个整数
parseFloat()        //解析一个字符串并返回一个浮点数


//结合以上两个函数可以计算两个数的运算结果

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>统计a与A的字符串的个数</title>
   <script type="text/javascript"> 
    var num1 = prompt("请输入第一个数","");
    var num2 = prompt("请输入第二个数","");
    var  n1= parseInt(num1)  ;
    var  n2= parseInt(num2)  ;
    var  = result = n1+n2;
    document.write(n1+"+"n2+"="+result);
   </script>
</head>
<body>

自定义函数:

在JavaScript中,自定义函数由关键字function,函数名,一组参数以及括号中执行的语句组成

function  函数名 (){
    //JavaScript语句
  
 [return 返回值]
}

//function是定义函数的关键字,必须有;小括号中有参数即为带参函数,否则为无参函数

----------------------------调用函数----------------------------------
1.通过添加事件来调用

function hello(){
//JavaScript语句
[return 返回值]
}

<input name= "btn" type ="button" value="调用函数" onclick="hello()"/>

2.匿名函数(不推荐使用,只要求能看懂)

function(){
//JavaScript语句
[return 返回值]
}
//如果想调用匿名函数就得为匿名函数整个语句一个值:

  var  cot =function hello(){
//JavaScript语句
[return 返回值]
}

<input name= "btn" type ="button" value="调用函数" onclick="cot()"/>
 

JavaScript中window对象:

window对象是整个BOM的核心,我们可以使用它的对象实现如下功能:

弹出新的浏览窗口

移动,关闭浏览器窗口或者调整窗口的大小

在浏览器中实现页面的前进和后退功能

window对象的常用属性:

             名   称                         说    明
history 有关客户访问过的URL信息
location 有关当前URL的信息

 

 

 

 

 

 

 

            名   称                                 说  明
prompt() 显示可提示用户输入的对话框
alert() 显示一个带有提示信息一个确定按钮的警告对话框
confirm() 显示一个带有提示信息,确定,取消的对话框
close() 关闭浏览器窗口
open() 打开一个新的浏览器窗口。加载给定的URL所指定的文档
setTimeout() 在指定的毫秒数后调用函数或计算表达式
setInterval() 按照指定的周期(以毫秒计算)来调用函数或表达式

 

 

 

 

 

 

window对象常用的事件:

                  名  称                      说   明
onload 一个页面或一幅图像完成加载
onmouseover 鼠标指针移动到某元素之上
onclick 鼠标单击某个对象
onkeydown 某个键盘按键被按下
onchange 域的内容被改变

 

 

 

 

 

 

history 对象和location对象

history对象提供用户最近浏览的URL列表,但是出于用隐私方面不在允许脚本访问已经访问过的实际URL,可以使用histrory对象提供

的逐个返回访问过的页面方法,具体方法请去查详细文档

location对象提供当前页面的URL信息,并且可以重新装载当前页面或新页面,其对象属性方法请去查详细文档

document对象的属性与常用方法:

属性 描述
referrer 返回载入当前文档的前文档的URL
URL 返回当前文档的URL
方法 描述
getElementById() 返回对拥有指定id的第一个对象的引用
getElementByName() 返回带有指定名称的对象的集合
getElementByTagName() 返回带有指定标签名的对象的集合
write() 向文档写文本,HTML表达式或javascript代码

 

 

 

 

 

 

JavaScript内置对象:

 

在javascript中,系统的内置对象有Date对象,Array对象,String对象和Math对象等。

Arrya:用于在单独的变量名中存储一系列的值

String:用于支持字符串的处理

Math:使我们有能力执行常用的数学。包含若干个数字常量和函数

Date:用于操作日期和时间

 

//JavaScript中对象与Java中的类非常相似,需要使用“new  对象名()“的方法创建

var 日期示例   = new  Date(参数);

//日期示例是存储Date对象的变量,可以省略参数,如果没有参数则表示当前日期和时间
//参数是字符串格式“MM DD,YYYY,hh:mm:ss”

Date对象有大量用于设置,获取和操作日期的方法,可以去相关文档去了解。

JavaScript中的Math对象:

Math的常用方法:

方法 说明 示例
ceil() 对数进行上舍入

Math.ceil(25.5);返回26

Math.ceil(-25.5);返回-25

floor() 对数进行下舍入

Math.floor(25.5);返回25

Math.floor(-25.5);返回-26

round() 对数四舍五入

Math.round(25.5);返回26

Math.round(-25.5);返回-26

random() 返回0~1中的随机数 Math.random();例如0.6273608814137365

 

 

 

 

 

 

 

 

JavaScript定时函数

没有定时函数之前时间是静止的,不能动态更新,JavaScript提供了两个定时函数setTimeout()setInterval().还提供了用于清除

timeoout的两个函数:clearTimeout()clearInterval();

 

//setTimeout()

setTimeout("调用的函数名称",等待的毫秒数)


//setInterval()

setInterval("调用的函数名称",周期性调用函数之间间隔毫秒数)

 

补充:使用定时函数写一个网页倒计时器

 

 

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>数字倒计时器</title>
    <script  type="text/javascript">
        window.onload = function () {
            var time;
            //锁定div对象
            var dom = document.getElementById("msg");
            var num = dom.innerText; 
            //给开始按钮注册事件
            var btnStart = document.getElementById("btnStart");
           
            btnStart.onclick = function () {
                time = setInterval(step, 1000);
                
            }
            function step() {
                if(num>0){
                    num--;
                    dom.innerText = num;
                }
            }
            //给停止按钮注册事件
            var btnStop = document.getElementById("btnStop");
            btnStop.onclick = function () {
                clearInterval(time);
            }
        }
    </script>
</head>
<body>
    <input  type="button" id="btnStart" value="开始" />
    <input type="button" id="btnStop" value="停止" /><br />
    <div id="msg">10</div>
</body>
</html>

 

//有启动暂停和复位的计时器



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>
<input id='show' type="text" readOnly='true' value='0'>
<br/>
<button onclick="start()">开始</button>
<button onclick="stop()">暂停</button>
<button onclick="reset()">复位</button>
<script>
    var show = document.getElementById("show");
    var int = null;
    
    var start = function(){
        int=self.setInterval("count()",1000)
    }
    var stop = function(){
        int=window.clearInterval(int);
    }
    var reset = function(){
        show.value = 0;
    }
    var count = function(){
        show.value = show.value*1 + 1
    }

</script>
</BODY>
</HTML>
//使用定时函数制作动态时钟
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>时钟</title>
    <script type="text/javascript">
        function startTime() {
            var today = new Date()
            var h = today.getHours()
            var m = today.getMinutes()
            var s = today.getSeconds()
            // add a zero in front of numbers<10
            m = checkTime(m)
            s = checkTime(s)
            document.getElementById('txt').innerHTML = h + ":" + m + ":" + s
            t = setTimeout('startTime()', 500)
        }

        function checkTime(i) {
            if (i < 10)
            { i = "0" + i }
            return i
        }
        onload = startTime;
    </script>
</head>
<body>
<div id="txt"></div>
</body>
</html>

关于javascript的内容先就到这里结束,后续内容我会不断更新,如果对你有所帮助别忘了留下你的脚步与关注!谢谢