JavaScript,JQuery,Ajax常见问题总结

三、JavaScript/JQuery/Ajax部分

1、请写一段Javascript程序,对以下程序的用户输入日期的有效性进行判断,如果格式错误就提示用户。在程序的恰当位置注明怎样调用你写的程序。日期格式为:年年年年月月日日小时,例如2003010812。

<html>
<head>
<title>NewPage1</title>
</head>
<body>
<form method="POST" action="test.php">  <p>查询日期(yyyymmddhh):<br>
  从 <input type="text" name="DateFrom" size="20"><br>
  到 <input type="text" name="DateTo" size="20"></p><p>
  <input type="submit" value="提交" name="submit1">
  <input type="reset" value="重写" name="reset1">
  </p>
</form>
</body>
</html>
答:
<html>
<head>
<script type="text/javascript">
    function fun(obj){
        if(!isDate(obj.value)){
            alert("日期格式错误!");
            obj.value="";
        }
    }
    function isDate(str){
        var reg = /^(\d{4})(\d{2})(\d{2})(\d{2})$/;
        var result = str.match(reg);
        if(result == null||parseFloat(result[4])>23)return false;
        var t=result[1]+","+parseFloat(result[2])+","+parseFloat(result[3]);
        var d = new Date(result[1],result[2]-1,result[3]);
        var newStr = d.getFullYear()+","+parseFloat(d.getMonth
()+1)+","+parseFloat(d.getDate());
        return t == newStr;
    }
</script>
</head>
<form method="POST"  action="">  <p>查询日期(2003010812):<br>
    从<input type="text"  name="DateFrom" size="20" οnblur="fun(this)"><br>
    到<input type="text"  name="DateTo" size="20" οnblur="fun(this)"></p><p>
</form>
</html>

2、Java和Javascript区别在哪?

Java与JavaScript是目前比较流行的两种语言,单从表面上看,两者名称很相似,于是许多初学者容易将二者混淆,或者直接归为一类,其实不然,虽然两者有着紧密的联系,但确是两个完全不同的语言。接下来,笔者仅就她们的几个主要差别归纳起来。
一.开发厂商
众所周知,Java是SUN公司推出的程序设计语言,特别适合于Internet应用程序开发,其前身是Oak语言,而JavaScript则是NetScape公司的产品,是为了扩展NetScape Navigator功能而开发的一种可嵌入Web页面中的解释性语言,其前身是Live Script。由于Java的普及,NetScape和SUN两家公司签订合同后才将其命名为JavaScript。
二.面向对象与基于对象
Java是一种真正的纯面向对象编程语言,在Java中,一切都是对象;JavaScript是一种脚本语言,由于她本身提供了非常丰富的内部对象供程序员使用,因而它是基于对象的语言。
三.开发和运行环境的不同
若希望利用Java编写程序并使之运行,必须事先在系统内安装相应版本的JDK和JVM,保证代码能够得到编译和运行的环境;而编写JavaScript则相对简单,只需使用某种HTML文档编辑器甚至某种字符编辑器(如Notepad)即可,然后打开浏览器即可运行。
四.变量的区别
Java中使用变量在编译之前必须声明其数据类型,因而她采用的是强类型变量;JavaScript则不用在变量前声明类型,而是由解释器在运行时自动检查,所以她是弱类型变量。
五.标签的不同
利用Java写出的Applet小程序,在HTML中用<applet>
……</applet>来标识;JavaScript程序在HTML中运行,其代码在<Script>……</Script>标签内。
六.解释与编译
Java源代码在执行前被编译,因而在网络应用中,必须要求客户端安装有解释平台,也就意味着Java应用不与HTML文档集成(Applet小程序例外);JavaScript是一种解释性语言,其代码在发往客户端之前不需编译,而是将其嵌入到HTML文档中,一起发送给客户端,由浏览器解释执行。
另外,JavaScript仅是一种解释性语言,并没有复杂的语法和规则,更不支持如Java里的继承这样的性质,因此也比Java更加容易学习。

3、列举javaScript的3种主要数据类型,2种复合数据类型和2种特殊数据类型。

主要数据类型:string, boolean, number
复合数据类型:function, object
        1:基本类型
            number string boolean
        2:引用类型
            对象object 数组
        3:特殊类型
            null undefined
          可以用typeof来判断一个变量的数据类型

4、谈谈你的JS的理解?

1.JavaScript是一种脚本语言,它采用小程序段的方式实现编程。像其它脚本语言一样,JavaScript同样已是一种解释性语言,它提供了一个易的开发过程。它的基本结构形式与C、C++、VB、Delphi十分类似。但它不像这些语言一样,需要先编译,而是在程序运行过程中被逐行地解释。它与HTML标识结合在一起,从而方便用户的使用操作。
2)基于对象的语言。
JavaScript是一种基于对象的语言,同时以可以看作一种面向对象的。这意味着它能运用自己已经创建的对象。因此,许多功能可以来自于脚本环境中对象的方法与脚本的相互作用。
3)简单性
JavaScript的简单性主要体现在:首先它是一种基于Java基本语句和控制流之上的简单而紧凑的设计, 从而对于学习Java是一种非常好的过渡。其次它的变量类型是采用弱类型,并未使用严格的数据类型。
4)安全性
JavaScript是一种安全性语言,它不允许访问本地的硬盘,并不能将数据存入到服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互。从而有效地防止数据的丢失。
5)动态性的
JavaScript是动态的,它可以直接对用户或客户输入做出响应,无须经过Web服务程序。它对用户的反映响应,是采用以事件驱动的方式进行的。所谓事件驱动,就是指在主页(Home Page)中执行了某种操作所产生的动作,就称为
事件(Event)。比如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响应。
6)跨平台性
JavaScript是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持JavaScript的浏览器就可正确执行。从而实现了
编写一次,走遍天下的梦想。实际上JavaScript最杰出之处在于可以用很小的程序做大量的事。无须有高性能的电脑,软件仅需一个字处理软件及一浏览器,无须WEB服务器通道,通过自己的电脑即可完成所有的事情。

5、ajax的优点?

使用ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

6、简述一下ajax调试代码查找错误的方法?

这是js调试代码存在已久的问题,简单的我们可以使用浏览器提供的错误提示框,还有可以使用DW CS4提供的纠正错误,或者通过专业的插件,如firebug等

7、简述ajax中Js脚本缓存问题该如何解决?
这个问题是大家遇到最常见的问题之一,因为修改了js内容调试的时候并不能显示新写代码的结果,是因为Js为了加速页面执行,当前页面会使用缓存保持当前调用的相同的连接
解决方法:
ajax中js如何清除缓存
1.在请求时传随机数
2.<meta >中加立马过期的代码     来 .  禁止缓存浏览脱机浏览的设置。

    <meta http-equiv="Pragma" content="no-cache">

      <meta http-equiv="Cache-Control" content="no-cache">

       <meta http-equiv="Expires" content="0 |Wed, 20 Jun 2007 22:33:00 GMT"> 
3.将get请求更改为post请求

8、Ajax应用和传统的web应用有何不同?

在传统的javascript中,如果想得到服务器端数据库或文件上的信息,或者发送客户端信息到服务器,需要建立一个HTML form然后Post或者get提交数据到服务端。用户需要点击submit 来发送或者接受数据信息,然后等待服务器响应请求,页面重写加载,因为服务器每次都要返回一个新的页面,所以传统的web应用有可能会很慢而且用户交互不友好。
使用ajax就可以使javascript通过XMLHttpRequest对象直接与服务器进行交互。通过HTTPRequest,一个web页面可以发送一个请求道web服务器并且接受web服务器返回的信息(不需要加载任何界面),展示给用户的还是同一个页面,用户感觉不到页面刷新,也看不到Javascript后台进行的发送请求和接受的响应。

9、javascript的作用?

表单验证、网页特效、网页游戏

10、为什么要有jquery?

1)jQuery是JavaScript的轻量级框架,对JavaScript进行了很好的封装,很多复杂的JavaScript代码不用写了,直接调用就可以,使开发简单、高效。
2)jQuery强大的选择器封装了DOM,操作网页元素更简单了。
3)在大型JavaScript框架中,jQuery对性能的理解最好,大小不超过30KB。
4)完善的ajax有着出色的浏览器兼容性,任何浏览器使用ajax都能兼容。
5)基于jQuery开发的插件目前已经有大约数千个。开发者可使用插件来进行表单确认、图表种类、字段提示、动画、进度条等任务。

11、jQuery选择器有多少种?

基本:
$("#myELement")  ID选择器
$("div")          
标签选择器
$(".myClass")    
类选择器
$("*")           
通配符选择器
层级选择器
过滤选择器
子元素选择器

12、jquery选择器有哪些优势?

简单的写法(#id)用来代替document.getElementById()。
支持css选择器。
完善的处理机制,就算写错了Id也不会报错。
总结:写法更简单,功能更强大

13、你是如何使用jquery中的ajax的?

如果是常规的ajax程序的话,使用load()、$.get()、$.post(),一般我会使用的是$.post()方法,如果需要设定,beforeSend(提交前回调函数),error(失败后处理),success(成功后处理),及complete(请求完成后处理)毁掉函数等,这个时候我会使用$.ajax()

14、jquery中的$.get和$.post请求区别?

1)$.get方法使用get方法来进行一步请求,$.post是使用post方法来进行请求。
2)get请求会讲参数跟在url后进行传递,而post请求则是作为Http消息的实体.内容发送给web服务器的,这种传递是对用户不可见的。
3)get方式传输的数据大小不能超过2kb而post请求要大的多
4)get方式请求的数据会被浏览器缓存起来,因此有安全问题

15、jquery中如何操作样式的?

addClass()来追加样式,removeClass()来删除样式,toggle()来切换样式。

16、如何设置和获取HTML和文本的值?

Html()方法,类似于innerHTML属性,可以用来读取或者设置某个元素中的HTML内容,text()类似于innerText属性,可以用来读取或这是某个元素的文本内容,val()可以用来设置和获取元素的值。

17、Jquery能做些什么?

1)获取页面元素
2)修改页面的外观
3)修改页面的内容
4)响应页面的操作
5)为页面添加动态效果
6)无需刷新页面,即可从服务器获取信息
7)简化常见的javascript的任务

18、在ajax中data主要有哪几种?

html拼接、json数组、form表单经过serialize()序列化的

19、jQuery中ajax由几部分组成?

1)请求url
2)请求参数
3)请求类型,get或post
4)回调函数
5)传输类型,html或json等
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值