不要了小视频在线观看_ -|五法├府谷装修
淘宝减肥药排行榜十强
只推淘宝安全有效的减肥药

当前位置:不要了小视频在线观看 > 减肥产品

不要了小视频在线观看

时间:2020-07-08 16:09  编辑:琼山资讯网

不要了小视频在线观看

Ajax 部分

1、 Ajax 应用和传统 web 用用有什么不同?

在传统的 Javascript 编程中 , 如果想得到服务器端数据库或文件上的信息 , 或者发送客户 端信息到服务器 , 需要建立一个 HTML form(表单 ) 然后 get 或者 post 数据到服务器端 . 用户需要点击 "Submit" 按钮来发送或者接受数据信息 , 然后等待服务器响应请求 , 页面重 新加载 . 因为服务器每次都会返回一个新的页面 , 所以传统的 web 应用有可能很慢而 且用户交互不友好 . 使用 AJAX 技术 , 就可以使 Javascript 通过 XMLhttpRequest 对象 直接与服务器进行交互,通过 HTTP Request, 一个 web 页面可以发送一个请求到 web 服务器并且接受 web 服务器返回的信息 (不用重新加载页面 ), 展示给用户的还是同一个 页面 , 用户感觉不到页面刷新 , 也看不到到 Javascript 后台时如何进行发送请求和接受 响应 .

2. 介绍一下 XMLHttpRequest 对象

通过 XMLHttpRequest 对象 , Web 开发人员可以在页面加载以后进行页面的局部更新 3. AJAX 的全称是什么 ? 介绍一下 AJAX

AJAX 的 全 称 是 Asynchronous JavaScript And XML. AJAX 是 2005年 由 Google 发 起并流行起来的编程方法 , AJAX 不是一个新的编程语言 , 但是它是一个使用已有标准的 新的编程技术 . 使用 AJAX 可以创建更好 , 更快 , 更用户界面友好的 Web 应用, AJAX 技术 基于 Javascript 和 HTTPRequest.

4. 不同浏览器创建 XMLHttpRequest 方法有什么不同 ?

XMLHttpRequest 类 首 先 由 Internet Explorer 以 ActiveX 对 象 引 入 , 被 称 为 XMLHTTP. 后来 Mozilla 、 Netscape 、 Safari 和其他浏览器也提供了 XMLHttpRequest 类 , 不 过它们创建 XMLHttpRequest 类的方法不同 . 对于 Internet Explorer 浏览器 :

xmlhttp_request=new ActiveXObject("Msxml2.XMLHTTP.3.0〃 );//3.0或 4.0, 5.0

xmlhttp_request=new ActiveXObject("Msxml2.XMLHTTP");

xmlhttp_request=new ActiveXObject("Microsoft.XMLHTTP");

由于在不同 Internet Explorer 浏览器中 XMLHTTP 版本可能不一致 , 为了更好的兼容不同 版本的 Internet Explorer 浏览器 , 因此我们需要根据不同版本的 Internet Explorer 浏览器 来 创 建 XMLHttpRequest 类 , 上 面 代 码 就 是 根 据 不 同 的 Internet Explorer 浏 览 器 创 建 XMLHttpRequest 类的方法 . 对于 Mozilla 、 Netscape 、 Safari 等浏览器创建 XMLHttpRequest 方法如下 :xmlhttp_request=newXMLHttpRequest();

如果服务器的响应没有 XML mime-type header, 某些 Mozilla 浏览器可能无法正常工作 . 为 了解决这个问题 , 如果服务器响应的 header 不是 text/xml,可以调用其它方法修改该 header. xmlhttp_request=new XMLHttpRequest();xmlhttp_request.overrideMimeType('text/xml');在实 际应用中 , 为了兼容多种不同版本的浏览器 , 一般将创建 XMLHttpRequest 类的方法 写成如 下形式 :

try{

if(window.ActiveXObject)

{

for(var i =5; i; i– )

{

try{if(i ==2)

{

xmlhttp_request=newActiveXObject("Microsoft.XMLHTTP");

}

else{xmlhttp_request=new ActiveXObject("Msxml2.XMLHTTP."+i +".0〃 ); xmlhttp_request.setRequestHeader("ContentType","text/xml");

xmlhttp_request.setRequestHeader("Charset","gb2312);}break;}

catch(e){xmlhttp_request=false; }}}else if(window.XMLHttpRequest

) {xmlhttp_request=new XMLHttpRequest();

if (xmlhttp_request.overrideMimeType)

{

xmlhttp_request.overrideMimeType('text/xml');}

}

}catch(e){xmlhttp_request=false; }发送请求了 可以调用 HTTP 请求类的 open()和 send()方法 , 如下所示 :xmlhttp_request.open('GET',URL, true); xmlhttp_request.send(null);open()的第 一个参数是 HTTP 请求方式— GET, POST 或任何服务器所支持的您想调用的方式 . 按照 HTTP 规范 , 该参数要大写 ; 否则 , 某些浏览器 (如 Firefox) 可能无法处理请求 . 第二个参数是请 求页面的 URL. 第三个参数设置请求是否为异步模式 . 如果是 true,JavaScript 函数将继续执 行 , 而不等待服务器响应 . 这就是 "AJAX" 中的 "A". 服务器的响应这需要告诉 HTTP 请求对 象用哪一个 JavaScript 函数处理这个响应 . 可以将对象的 onreadystatechange 属性设置为要 使用的 JavaScript 的函数名 , 如下所示 :xmlhttp_request.onreadystatechange=FunctionName; FunctionName 是用 JavaScript 创建的函数名 , 注意不要写成 FunctionName(),当然我们也可 以 直 接 将 JavaScript 代 码 创 建 在 onreadystatechange 之 后 , 例 如 : xmlhttp_request.onreadystatechange=function(){//JavaScript 代码段 };首先要检查请求的 状态 . 只有当一个完整的服务器响应已经收到了 , 函数才可以处理该响应 . XMLHttpRequest 提供了 readyState 属性来对服务器响应进行判断 . readyState 的取值如下 :0(未初始化 ) 1(正 在装载 ) 2(装载完毕 ) 3(交互中 ) 4(完成 ) 所以只有当 readyState=4时 , 一个完整的服务器 响应已经收到了 , 函数才可以处理该响应 . 具体代码如下

if (http_request.readyState==4) {//收到完整的服务器响应 }

else {//没有收到完整的服务器响应 }

当 readyState=4时 , 一个完整的服务器响应已经收到了 , 接着函数会检查 HTTP 服务器 响 应的状态值 . 完整的状态取值可参见 W3C 文档 . 当 HTTP 服务器响应的值为 200时 , 表示 状态正常 . 处理从服务器得到的数据 有两种方式可以得到这些数据 :

(1)以文本字符串的方式返回服务器的响应

(2)以 XMLDocument 对象方式返回响应

5. AJAX 都有哪些有点和缺点 ?

传统的 web 应用允许用户填写表单 (form),当提交表单时就向 web 服务器发送一个请 求 . 服务器接收并处理传来的表单 , 然后返回一个新的网页 . 这个做法浪费了许多带宽 , 因为在 后两个页面中的大部分 HTML 代码往往是相同的 . 由于每次应用的交互都需要向服务器发 送请求 , 应用的响应时间就依赖于服务器的响应时间 . 这导致了用户界面的响应比本地应用 慢得多 . 与此不同 ,AJAX 应用可以仅向服务器发送并取回必需的数据 , 它使用 SOAP 或其它 一些基于 XML 的 web service 接口 , 并在客户端采用 JavaScript 处理来自服务器的响应 . 因为在服务器和浏览器之间交换的数据大量减少 , 结果我们就能看到响应更快的应用 . 同时 很多的处理工作可以在发出请求的客户端机器上完成 , 所以 Web 服务器的处理时间也减少 了 . 使用 Ajax 的最大优点 , 就是能在不更新整个页面的前提下维护数据 . 这使得 Web 应用 程序更为迅捷地回应用户动作 , 并避免了在网络上发送那些没有改变过的信息 . Ajax 不需要

任何浏览器插件 , 但需要用户允许 JavaScript 在浏览器上执行 . 就像 DHTML 应用程序那样 , Ajax 应用程序必须在众多不同的浏览器和平台上经过严格的测试 . 随着 Ajax 的成熟 , 一些 简化 Ajax 使用方法的程序库也相继问世 . 同样 , 也出现了另一种辅助程序设计的技术 , 为那 些不支持 JavaScript 的用户提供替代功能 . 对应用 Ajax 最主要的批评就是 , 它可能破坏浏 览器后退按钮的正常行为 . 在动态更新页面的情况下 , 用户无法回到前一个页面状态 , 这是 因为浏览器仅能记下历史记录中的静态页面 . 一个被完整读入的页面与一个已经被动态修 改过的页面之间的差别非常微妙 ; 用户通常都希望单击后退按钮 , 就能够取消他们的前一次 操作 , 但是在 Ajax 应用程序中 , 却无法这样做 . 不过开发者已想出了种种办法来解决这个问题 , 当中大多数都是在用户单击后退按钮访问历史记录时 , 通过建立或使用一个隐藏的 IFRAME 来重现页面上的变更 . (例如 , 当用户在 Google Maps 中单击后退时 , 它在一个隐藏的 IFRAME 中进行搜索 , 然后将搜索结果反映到 Ajax 元素上 , 以便将应用程序状态恢复到当 时的状态 . ) 一个相关的观点认为 , 使用动态页面更新使得用户难于将某个特定的状态保存 到收藏夹中 . 该问题的解决方案也已出现 , 大部分都使用 URL 片断标识符 (通常被称为锚点 , URL 即中后面的部分 ) 来保持跟踪 , 允许用户回到指定的某个应用程序状态 . (许多浏览器允许 JavaScript 动态更新锚点 , 这使得 Ajax 应用程序能够在更新显示内容的同时更新锚点 . 这 些解决方案也同时解决了许多关于不支持后退按钮的争论 . 进行 Ajax 开发时 , 网络延迟— 即用户发出请求到服务器发出响应之间的间隔——需要慎重考虑 . 不给予用户明确的回应 , 没 有恰当的预读数据 , 或者对 XMLHttpRequest 的不恰当处理 , 都会使用户感到延迟 , 这是用户 不想 , 也是他们无法理解的 . 通常的解决方案是 , 使用一个可视化的组件来告诉用户系统正 在进行后台操作并且正在读取数据和内容 . 一些手持设备 (如手机 ,PDA 等 ) 现在还不能很好 的支持 Ajax; 用 JavaScript 作的 Ajax 引擎 ,JavaScript 的兼容性和 DeBug 都是让人头痛 的事 ; Ajax 的无刷新重载 , 由于页面的变化没有刷新重载那么明显 , 所以容易给用户带来困 扰―― 用户不太清楚现在的数据是新的还是已经更新过的 ; 现有的解决有 :在相关位置提示 , 数据更新的区域设计得比较明显 , 数据更新后给用户提示等 ; 对串流媒体的支持没有 FLASH,JavaApple

6. AJAX 的优缺点都有什么 ?

优点:

1. 最大的一点是页面无刷新 , 用户的体验非常好 .

2, 使用异步方式与服务器通信 , 具有更加迅速的响应能力 .

3, 可以把以前一些服务器负担的 ? 工作转嫁到客户端 , 利用客户端闲置的能力来处理 , 减轻 服务器和带宽的负担 , 节约空间和宽带租用成本 . 并且减轻服务器的负担 ,ajax 的原则是 " 按需取数据 ", 可以最大程度的减少冗余请求 , 和响应对服务器造成的负担 .

4, 基于标准化的并被广泛支持的技术 , 不需要下载插件或者小程序 .

ajax 的缺点

1,ajax 不支持浏览器 back 按钮 .

2, 安全问题 AJAX 暴露了与服务器交互的细节 .

3, 对搜索引擎的支持比较弱 .

4, 破坏了程序的异常机制 .

5, 不容易调试 .

7. Ajax 的工作原理 ?

Ajax 的 核 心 是 JavaScript 对 象 XmlHttpRequest. 该 对 象 在 Internet Explorer5中 首 次 XmlHttpRequest 使您可以使用 JavaScript 引入 , 它是一种支持异步请求的技术 . 简而言 之 , 向服务器提出请求并处理响应 , 而不阻塞用户 . 在创建 Web 站点时 , 在客户端执行屏 幕更新为用户提供了很大的灵活性 .

8. 介绍一下 XMLHttpRequest 对象的常用方法和属性 ?

open("method","URL")建 立 对 服 务 器 的 调 用 , 第 一 个 参 数 是 HTTP 请 求 可 以 为 GET,POST 或任何服务器所支持的您想调用的方式 . 第二个参数是请求页面的 URL. send()方法 , 发送具体请求

abort()方法 , 停止当前请求

readyState 属性 请求的状态 有 5个可取值 0=未初始化 ,1=正在加载方式 2=已加载 , 3=交互中 ,4=完成

responseText 属性 服务器的响应 , 表示为一个串

reponseXML 属性 服务器的响应 , 表示为 XML status 服务器的 HTTP 状态码 ,200对应 ok 400对应 not found

9. Ajax 和 javascript 的区别 ?

javascript 是一种在浏览器端执行的脚本语言 , Ajax 是一种创建交互式网页应用的开发 技术 , 它是利用了一系列相关的技术其中就包括 javascript.

Javascript 是由网景公司开发的一种脚本语言 , 它和 sun 公司的 java 语言是没有任何关 系的它们相似的名称只是一种行销策略 . 在一般的 web 开发中 ,javascript 是在浏览器 端执行的 , 我们可以用 javascript 控制浏览器的行为和内容 .

Javascript 的特性 1, 控制文档的外观和内容

2, 与 HTML 表单的交互

3, 与用户的交互

10、 XML 概述

XMLHttpRequest 可以提供不重新加载页面的情况下更新网页,在页面加载后在客户端 向服务器请求数据,在页面加载后在服务器端接受数据,在后台向客户端发送数据。 XMLHttpRequest 对象提供了对 HTTP 协议的完全的访问,包括做出 POST 和 HEAD 请求以及普通的 GET 请求的能力。 XMLHttpRequest 可以同步或异步返回 Web 服务 器 的 响 应 , 并 且 能 以 文 本 或 者 一 个 DOM 文 档 形 式 返 回 内 容 。 尽 管 名 为 XMLHttpRequest ,它并不限于和 XML 文档一起使用:它可以接收任何形式的文本文 档。 XMLHttpRequest 对象是名为 AJAX 的 Web 应用程序架构的一项关键功能。 对象 浏览器支持 XMLHttpRequest 得到了所有现代浏览器较好的支持。 唯一的浏览器依赖性 涉及 XMLHttpRequest 对象的创建。在 IE 5和 IE 6中,必须使用特定于 IE 的 ActiveXObject()构造函数。正如在 XMLHttpRequest 对象 这一节所介绍的。 W3C 标 准化 MLHttpRequest 对象还没有标准化,但是 W3C 已经开始了标准化的工作,本手 册介绍的内容都是基于标准化的工作草案。当前的 XMLHttpRequest 实现已经相当一 致。但是和标准有细微的不同。例如,一个实现可能返回 null ,而标准要求是空字符 串,或者实现可能把 readyState 设置为 3而不保证所有的响应头部都可用。编辑本段 属性 readyStateHTTP 请求的状态 . 当一个 XMLHttpRequest 初次创建时, 这个属性的值 从 0开始, 直到接收到完整的 HTTP 响应, 这个值增加到 4。 5个状态中每一个都有 一个相关联的非正式的名称,下表列出了状态、名称和含义:

状态 名称 描述

0Uninitialized 初始化状态。 XMLHttpRequest 对象已创建或已被 abort()方法重置。 1Open open()方法已调用,但是 send()方法未调用。请求还没有被发送。

2Send Send()方法已调用, HTTP 请求已发送到 Web 服务器。未接收到响应。 3Receiving 所有响应头部都已经接收到。响应体开始接收但未完成。

4Loaded HTTP 响应已经完全接收。

readyState 的值不会递减,除非当一个请求在处理过程中的时候调用了 abort()或 open()

方法。 每次这个属性的值增加的时候, 都会触发 onreadystatechange 事件句柄。 responseText 目前为止从服务器接收到的响应体(不包括头部) ,或者如果还没有接收到数据的话,就是 空字符串。如果 readyState 小于 3,这个属性就是一个空字符串。当 readyState 为 3,这 个属性返回目前已经接收的响应部分。如果 readyState 为 4,这个属性保存了完整的响应 体。 如果响应包含了为响应体指定字符编码的头部, 就使用该编码。 否则, 假定使用 Unicode UTF-8。 responseXML 对请求的响应,解析为 XML 并作为 Document 对象返回。 statu 由 服务器返回的 HTTP 状态代码,如 200表示成功,而 404表示 "Not Found" 错误。当 readyState 小于 3的时候读取这一属性会导致一个异常。 statusText 这个属性用名称而不是 数字指定了请求的 HTTP 的状态代码。也就是说,当状态为 200的时候它是 "OK" ,当状 态为 404的时候它是 "Not Found" 。和 status 属性一样,当 readyState 小于 3的时候读 取这一属性会导致一个异常。编辑本段事件句柄 onreadystatechange 每次 readyState 属性改 变的时候调用的事件句柄函数。当 readyState 为 3时,它也可能调用多次。编辑本段方法 abort()取消当前响应, 关闭连接并且结束任何未决的网络活动。 这个方法把 XMLHttpRequest 对象重置为 readyState 为 0的状态,并且取消所有未决的网络活动。例如,如果请求用了 太长时间, 而且响应不再必要的时候, 可以调用这个方法。 getAllResponseHeaders()把 HTTP 响应头部作为未解析的字符串返回。如果 readyState 小于 3,这个方法返回 null 。否则, 它返回服务器发送的所有 HTTP 响应的头部。 头部作为单个的字符串返回, 一行一个头部。 每行用换行符 "\r\n"隔开。 getResponseHeader()返回指定的 HTTP 响应头部的值。其参数 是要返回的 HTTP 响应头部的名称。可以使用任何大小写来制定这个头部名字,和响应头 部的比较是不区分大小写的。该方法的返回值是指定的 HTTP 响应头部的值,如果没有接 收到这个头部或者 readyState 小于 3则为空字符串。如果接收到多个有指定名称的头部, 这个头部的值被连接起来并返回,使用逗号和空格分隔开各个头部的值。 open()初始化 HTTP 请求参数,例如 URL 和 HTTP 方法,但是并不发送请求。 send()发送 HTTP 请求, 使用传递给 open()方法的参数,以及传递给该方法的可选请求体。 setRequestHeader()向一 个打开但未发送的请求设置或添加一个 HTTP 请求。编辑本段 XMLHttpRequest.open()初始化 HTTP 请求参数语法 open(method,url, async, username, password)method 参数是用 于请求的 HTTP 方法。值包括 GET 、 POST 和 HEAD 。 url 参数是请求的主体。大多数浏 览器实施了一个同源安全策略, 并且要求这个 URL 与包含脚本的文本具有相同的主机名和 端口。 async 参数指示请求使用应该异步地执行。如果这个参数是 false ,请求是同步的, 后续对 send()的调用将阻塞, 直到响应完全接收。 如果这个参数是 true 或省略, 请求是异 步的, 且通常需要一个 onreadystatechange 事件句柄。 username 和 password 参数是可选的, 为 url 所需的授权提供认证资格。如果指定了,它们会覆盖 url 自己指定的任何资格。 说明这个方法初始化请求参数以供 send()方法稍后使用。它把 readyState 设置为 1,删除 之 前 指 定 的 所 有 请 求 头 部 , 以 及 之 前 接 收 的 所 有 响 应 头 部 , 并 且 把 responseText 、 responseXML 、 status 以及 statusText 参数设置为它们的默认值。当 readyState 为 0的时 候(当 XMLHttpRequest 对象刚创建或者 abort()方法调用后)以及当 readyState 为 4时 (已经接收响应时) ,调用这个方法是安全的。当针对任何其他状态调用的时候, open()方 法的行为是为指定的。 除了保存供 send()方法使用的请求参数, 以及重置 XMLHttpRequest 对象以便复用, open()方法没有其他的行为。要特别注意,当这个方法调用的时候,实现 通常不会打开一个到 Web 服务器的网络连接。编辑本段 XMLHttpRequest.send()发送一个 HTTP 请求语法 send(body)如果通过调用 open()指定的 HTTP 方法是 POST 或 GET , body 参数指定了请求体, 作为一个字符串或者 Document 对象。 如果请求体不是必须的话, 这个参数就为 null 。对于任何其他方法,这个参数是不可用的,应该为 null (有些实现不

允许省略该参数) 。说明这个方法导致一个 HTTP 请求发送。如果之前没有调用 open(), 或者更具体地说, 如果 readyState 不是 1, send()抛出一个异常。 否则, 它发送一个 HTTP 请求,该请求由以下几部分组成:之前调用 open()时指定的 HTTP 方法、 URL 以及认证 资格(如果有的话) 。 之前调用 setRequestHeader()时指定的请求头部(如果有的话) 。 传 递给这个方法的 body 参数。 一旦请求发布了, send()把 readyState 设置为 2,并触发 onreadystatechange 事件句柄。如果之前调用的 open()参数 async 为 false ,这个方法会阻 塞并不会返回,直到 readyState 为 4并且服务器的响应被完全接收。否则,如果 async 参 数为 true ,或者这个参数省略了, send()立即返回,并且正如后面所介绍的, 服务器响应将 在一个后台线程中处理。如果服务器响应带有一个 HTTP 重定向, send()方法或后台线程 自动遵从重定向。当所有的 HTTP 响应头部已经接收, send()或后台线程把 readyState 设 置为 3并触发 onreadystatechange 事件句柄。如果响应较长, send()或后台线程可能在状 态 3中触发 onreadystatechange 事件句柄:这可以作为一个下载进度指示器。最后,当响 应完成, send()或后台线程把 readyState 设置为 4,并最后一次触发事件句柄。编辑本段 XMLHttpRequest.setRequestHeader()语法 setRequestHeader(name,value)name 参数是要设置 的头部的名称。这个参数不应该包括空白、冒号或换行。 value 参数是头部的值。这个参数 不应该包括换行。说明 setRequestHeader()方法指定了一个 HTTP 请求的头部,它应该包 含在通过后续 send()调用而发布的请求中。这个方法只有当 readyState 为 1的时候才能 调用,例如,在调用了 open()之后,但在调用 send()之前。如果带有指定名称的头部已经 被指定了,这个头部的新值就是:之前指定的值,加上逗号、空白以及这个调用指定的值。 如果 open()调用指定了认证资格, XMLHttpRequest 自动发送一个适当的 Authorization 请 求头部。但是,你可以使用 setRequestHeader()来添加这个头部。类似地,如果 Web 服务 器已经保存了和传递给 open()的 URL 相关联的 cookie , 适当的 Cookie 或 Cookie2头部 也自动地包含到请求中。可以通过调用 setRequestHeader()来把这些 cookie 添加到头部。 XMLHttpRequest 也可以为 User-Agent 头部提供一个默认值。如果它这么做,你为该头部 指定的任何值都会添加到这个默认值后面。有些请求头部由 XMLHttpRequest 自动设置而 不是由这个方法设置,以符合 HTTP 协议。这包括如下和代理相关的头部:Host onnection Keep-Alive Accept-charset Accept-Encoding If-Modified-Since If-None-Match If-Range Range JavaScript 部分

1、数组的创建方式?

1、 arrayObj =new Array();//创建一个数组

2、 r arrayObj =new Array([size]);//创建一个数组并指定长度,注意不是上限,是长度

3、 var arrayObj =new Array([element0[,element1[,...[,elementN]]]]);

//创建一个数组并赋值复制代码

2、数组元素的访问

var testGetArrValue=arrayObj[1];//获取数组的元素值

arrayObj[1]=" 这是新值 "; //给数组元素赋予新的值

3、数组元素的添加

arrayObj. push([item1[item2[.. . [itemN]]]]);//将一个或多个新元素添加到数组结尾, 并 返回数组新长度

arrayObj.unshift([item1[item2[.. . [itemN]]]]);//将一个或多个新元素添加到数组开始, 数组中的元素自动后移,返回数组新长度

arrayObj.splice(insertPos,0,[item1[,item2[,. . . [,itemN]]]]);//将一个或多个新元素插入到 数组的指定位置,插入位置的元素自动后移,返回 "" 。

4、数组元素的删除

arrayObj.pop();//移除最后一个元素并返回该元素值

arrayObj.shift();//移除最前一个元素并返回该元素值,数组中元素自动前移

arrayObj.splice(deletePos,deleteCount);//删 除 从 指 定 位 置 deletePos 开 始 的 指 定 数 量 deleteCount 的元素,数组形式返回所移除的元素

5、数组的截取和合并

arrayObj.slice(start,[end]);//以数组的形式返回数组的一部分,注意不包括 end 对应的 元素,如果省略 end 将复制 start 之后的所有元素 arrayObj.concat([item1[,item2[,. . . [,itemN]]]]);//将多个数组(也可以是字符串,或者是数组和字符串的混合)连接为一个 数组,返回连接好的新的数组

6、数组的拷贝

arrayObj.slice(0);//返回数组的拷贝数组,注意是一个新的数组,不是指向

arrayObj.concat();//返回数组的拷贝数组,注意是一个新的数组,不是指向

7、数组元素的排序

arrayObj.reverse();//反转元素(最前的排到最后、最后的排到最前) ,返回数组地址 arrayObj.sort();//对数组元素排序,返回数组地址

8、数组元素的字符串化

arrayObj.join(separator);//返回字符串,这个字符串将数组的每一个元素值连接在一起, 中间用 separator 隔开 ,oLocaleString 、 toString 、 valueOf :可以看作是 join 的特 殊用法,不常用

9、数组对象的属性

数组对象有 3个属性

1、 length 属性 Length 属性表示数组的长度,即其中元素的个数。因为数组的索引总是 由 0开始,所以一个数组的上下限分别是:0和 length-1。和其他大多数语言不同的 是, JavaScript 数组的 length 属性是可变的,这一点需要特别注意。当 length 属性被 设置得更大时,整个数组的状态事实上不会发生变化,仅仅是 length 属性变大;当 length 属性被设置得比原来小时, 则原先数组中索引大于或等于 length 的元素的值全 部被丢失。下面是演示改变 length 属性的例子:代码

var arr=[12,23,5,3,25,98,76,54,56,76];//定义了一个包含 10个数字的数组

alert(arr.length);//显示数组的长度 10

arr.length=12;//增大数组的长度

alert(arr.length);//显示数组的长度已经变为 12

alert(arr[8]);//显示第 9个元素的值,为 56

arr.length=5;//将数组的长度减少到 5,索引等于或超过 5的元素被丢弃

alert(arr[8]);//显示第 9个元素已经变为 "undefined"

arr.length=10;//将数组长度恢复为 10

alert(arr[8]);//虽然长度被恢复为 10,但第 9个元素却无法收回,显示 "undefined" 2、 prototype 属 性 返 回 对 象 类 型 原 型 的 引 用 。 prototype 属 性 是 object 共 有 的 。 objectName.prototype

objectName 参数是 object 对象的名称。说明:用 prototype 属性提供对象的类的一 组基本功能。对象的新实例“继承”赋予该对象原型的操作。对于数组 对象,以以下例子说明 prototype 属性的用途。给数组对象添加返回数 组中最大元素值的方法。要完成这一点,声明一个函数,将它加入 Array.prototype , 并使用它。

function array_max()

{

var i,

max =this[0];

for (i=1; i <this.length; i++)

{

if (max<this[i])

max =this[i];

}

return max;

}

Array.prototype.max =array_max;

var x =new Array(1,2, 3, 4, 5, 6);

var y =x.max();

该代码执行后, y 保存数组 x 中的最大值,或说 6。

3、 constructor 属性 表示创建对象的函数。 object.constructor //object是对象或函数的名 称。 说明:constructor 属性是所有具有 prototype 的对象的成员。 它们包括除 Global 和 Math 对象以外的所有 JScript 固有对象。 constructor 属性保存了对构造特定对 象实例的函数的引用。 eg :x =new String("Hi");

if (x.constructor==String) //进行处理(条件为真) 。

function MyFunc {//函数体。

y =new MyFunc;

if (y.constructor==MyFunc) //进行处理(条件为真) 。

y =new Array();

10、 js 的内置对象

1.Date

属性

onstructor 所建立对象的函数参考

prototype 能够为对象加入的属性和方法

方法 (43):

getDay()返回一周中的第几天 (0-6)

getYear()返回年份 .2000年以前为 2位 ,2000(包含 ) 以后为 4位 getFullYear()返回完整的 4位年份数

getMonth()返回月份数 (0-11)

getDate()返回日 (1-31)

getHours()返回小时数 (0-23)

getMinutes()返回分钟 (0-59)

getSeconds()返回秒数 (0-59)

getMilliseconds()返回毫秒 (0-999)

getUTCDay()依据国际时间来得到现在是星期几 (0-6)

getUTCFullYear()依据国际时间来得到完整的年份

getUTCMonth()依据国际时间来得到月份 (0-11)

getUTCDate()依据国际时间来得到日 (1-31)

getUTCHours()依据国际时间来得到小时 (0-23)

getUTCMinutes()依据国际时间来返回分钟 (0-59)

getUTCSeconds()依据国际时间来返回秒 (0-59)

getUTCMilliseconds()依据国际时间来返回毫秒 (0-999)

getTime()返回从 1970年 1月 1号 0:0:0到现在一共花去的毫秒数 getTimezoneoffset()返回时区偏差值 , 即格林威治平均时间 (GMT)与运行 脚本的计算机所处时区设置之间相差的分钟数 ) parse(dateString)返回在 Date 字符串中自从 1970年 1月 1日 00:00:00以 来的毫秒数

setYear(yearInt)设置年份 .2位数或 4位数

setFullYear(yearInt)设置年份 .4位数

setMonth(monthInt)设置月份 (0-11)

setDate(dateInt)设置日 (1-31)

setHours(hourInt)设置小时数 (0-23)

setMinutes(minInt)设置分钟数 (0-59)

setSeconds(secInt)设置秒数 (0-59)

setMilliseconds(milliInt)设置毫秒 (0-999)

setUTCFullYear(yearInt)依据国际时间来设置年份

setUTCMonth(monthInt)依据国际时间来设置月 (0-11)

setUTCDate(dateInt)依据国际时间来设置日 (1-31)

setUTCHours(hourInt)依据国际时间来设置小时

setUTCMinutes(minInt)依据国际时间来设置分钟

setUTCSeconds(secInt)依据国际时间来设置秒

setUTCMilliseconds(milliInt)依据国际时间来设置毫秒

setTime(timeInt)设置从 1970年 1月 1日开始的时间 . 毫秒数

toGMTString()根据格林威治时间将 Date 对象的日期 (一个数值 ) 转变成一 个 GMT 时间字符串 , 如 :Weds,15June l99714:02:02GMT

toUTCString()根据通用时间将一个 Date 对象的日期转换为一个字符串 toLocaleString()把 Date 对象的日期 (一个数值 ) 转变成一个字符串 , 使用所 在计算机上配置使用的特定日期格式

toSource()显示对象的源代码

toString()将日期对象转换为字符串

UTC(yyyy,mm, dd, hh, mm, ss, msec) 返回从格林威治标准时间到指定时 间的差距 , 单位为毫秒

valueOf()返回日期对象的原始值

2.Math

属性 :

constructor 所建立对象的函数参考

prototype 能够为对象加入的属性和方法

E 欧拉常量 , 自然对数的底 (约等于 2.718)

LN22的自然对数 (约等于 0.693)

LN1010的自然对数 (约等于 2.302)

LOG2E 以 2为底的 e 的对数 .(约等于 1.442)

LOG10E 以 10为底的 e 的对数 (约等于 0.434)

PI ∏的值 (约等于 3.14159)

SQRT1_21/2(0.5)的平方根 (即 l 除以 2的平方根 , 约等于 o.707) SQRT22的平方根 (约等于 1.414)

方法 :

abs(x)返回数字的绝对值

acos(x)返回数字的反余弦值

asin(x)返回数字的反正弦值

atan(x)返回位于 -PI/2和 PI/2的反正切值

atan2(y,x)返回(x,y )位于 -PI 到 PI 之间的角度

ceil(x)返回 x 四舍五入后的最大整数

cos(x)返回一个数字的余弦值

exp(x)返回 E^x值

floor(x)返回 x 四舍五入后的最小整数

log(x)返回底数为 E 的自然对数

max(x,y)返回 x 和 y 之间较大的数

min(x,y)返回 x 和 y 之间较小的数

pow(x,y)返回 y^x的值

random()返回位于 0到 1之间的随机函数

round(x)四舍五入后取整

sin(x)返回数字的正弦值

sqrt(x)返回数字的平方根

tan(x)返回一个角度的正切值

toSource()显示对象的源代码

valueOf()返回数学对象的原始值

3.Number

属性 :

MAX_VALUThe largest possible value a number in JavaScript can have 1.7976931348623157E+308

MIN_VALUEThe smallest possible value a number in JavaScript can have 5E-324

NaN Equal to a value that is not a number.

NEGATIVE_INFINITYA value that is less than MIN_VALUE.

POSOTIVE_INFINITYA value that is greater than MAX_VALUE.

prototype A static property of the Number object

方法 :

toString Returns a string representing the specified object

valueOf()返回数学对象的原始值

4.Boolean

属性 :

constructor 所建立对象的函数参考

prototype 能够为对象加入的属性和方法

方法 :

toSource()显示对象的源代码

toString()将布尔值转换为字符串 , 并且返回结果

valueOf()返回布尔对象的原始值

5.String

属性 :

constructor 所建立对象的函数参考

prototype 能够为对象加入的属性和方法

length 返回字符串的字符长度

方法 (20):

anchor("name")用来把字符串转换为 HTML 锚点标记内 (<ANAME=>) big()把字符串中的文本变成大字体 (<BIG>)

blink()把字符串中的文本变成闪烁字体 (<BLINK>)

bold()把字符串中的文本变成黑字体 (<B>)

fixed()把字符串中的文本变成固定间距字体 , 即电报形式 (<TT>) fontcolor(color)设置字符串中文本的颜色 (<FONTCOLOR=>)

Fontsize(size)把字符串中的文本变成指定大小 (<FONTSIZE=>)

italics()把字符串中的文本变成斜字体 (<I>)

Link(url)用来把字符串转换 -HTML 链接标记中 (<AHREF=>)

small()把字符串中的文本变成小字体 (<SMALL>)

strike()把字符串中的文本变成划掉字体 (<STRIKE>)

sub()把字符串中的文本变成下标 (subscript)字体 ((SUB>)

sup()把字符串中的文本变成上标 (superscript)字体 (<SUP>)

charAt(index)返回指定索引处的字符

charCodeAt(index)返回一个整数 , 该整数表示 String 对象中指定位置处的字符 的 Unicode 编码

concat(string2)连接两条或多条字符串

fromCharCode(num1,num2, … , numN) 获取指定的 Unicode 值并返回字符串 indexOf(searchString,startIndex) 返回字符串中第一个出现指定字符串的置 lastlndexOf(searchString,startIndex) 返回字符串中最后一个出现指定字符串 的位置

match(regex)在字符串中查找指定值

replace(regex,newString) 将字符串中的某些字符替换成其它字符

search(regex)针对某执行值对字符串进行查找

slice(startIndex,endIndex) 将部分字符抽出并在新的字符串中返回剩余部分 split(delimiter)将字符串分配为数组

substr(startIndex,length) 从 startIndex 取 , 取 length 个字符

substring(startIndex,endIndex) 从 startIndex 和 endIndex 之间的字符 , 不包括 endIndex

toLowerCase()把字符串中的文本变成小写

toUpperCase()把字符串中的文本变成大写

toSource()显示对象的源代码

valueOf()返回字符串对象的原始值

6.Array

属性 :

constructor 所建立对象的函数参考

prototype 能够为对象加入的属性和方法

index For an array created by a regular expression match, the zero-based index of the match in the string.

input For an array created by a regular expression match, reflects the original string against which the regular expression was matched.

length 获取数组元素的个数 , 即最大下标加 1

方法

concat(array1,arrayn)将两个或两个以上的数组值连接起来 , 合并后返回结果 join(string)将数组中元素合并为字符串 ,string 为分隔符 . 如省略参数则直接 合并 , 不再分隔

pop()移除数组中的最后一个元素并返回该元素

push(value)在数组的末尾加上一个或多个元素 , 并且返回新的数组长度值 reverse()颠倒数组中元素的顺序 , 反向排列

shift()移除数组中的第一个元素并返回该元素

slice(start,deleteCount, [item1[,item2[,...[,itemN]]]])返从一个数组中移除一 个或多个元素 , 如果必要 , 在所移除元素的位置上插入新元素 , 返回所移除 的元素

sort(compareFunction) 在未指定排序号的情况下 , 按照元素的字母顺序排列 , 如果不是字符串类型则转换成字符串再排序 , 返回排序后的数组

splice()为数组删除并添加新的元素

toSource()显示对象的源代码

toString()将数组所有元素返回一个字符串 , 其间用逗号分隔

unshift(value)为数组的开始部分加上一个或多个元素 , 并且返回该数组的新 长度

valueOf()返回数组对象的原始值

7.RegExp

属性 :

,..., Parenthesized substring matches, if any.

$_See input.

$*See multiline.

$&See lastMatch.

$+See lastParen.

$`See leftContext.

$'See rightContext.

global Whether or not to test the regular expression against all possible matches in a string, or only against the first.

ignoreCase Whether or not to ignore case while attempting a match in a string. input The string against which a regular expression is matched.

lastIndex The index at which to start the next match.

lastMatch The last matched characters.

lastParen The last parenthesized substring match, if any.

leftContext substring preceding the most recent match.

multiline Whether or not to search in strings across multiple lines.

rightContext The substring following the most recent match.

source The text of the pattern.

方法 :

compile Compiles a regular expression object.

exec Executes a search for a match in its string parameter.

test Tests for a match in its string parameter

8.Function

属性 :

arguments An array corresponding to the arguments passed to a function. arity Indicates the number of arguments expected by the function. caller Specifies which function called the current function.

prototype Allows the addition of properties to a Function object.

方法 :

toString Returns a string representing the specified object.

9.Object

属性 :

constructor Specifies the function that creates an object's prototype.

prototype Allows the addition of properties to all objects.

方法 :

eval Evaluates a string of JavaScript code in the context of the specified object.

toString Returns a string representing the specified object.

unwatch Removes a watchpoint from a 属性源 the object.

valueOf Returns the primitive value of the specified object.

watch Adds a watchpoint to a 属性源 the object.

10. 全局

属性 :

Infinity 指定一个正负无穷大的数值

NaN 指定一个 “非数字” 值

undefined 指定一个未被赋值的变量

方法 :

decodeURI()为加密的 URI 进行解码

decodeURIComponent()为加密的 URI 组件解码

encodeURI()将字符串加密为 URI

encodeURIComponent()将字符串加密为 URI 组件

escape(string)加密一个字符串

unescape()使用 escape()对一个字符串进行解码

eval(string)判断一个字符串并将其以脚本代码的形式执行

isFinite(number)检测一个值是否为一个有限数字 , 返回 True 或 False isNaN(string)检测一个值是否不是一个有限数字

Number()将一个对象的值转换为一个数字

parseFloat(string)将一个字符串解析为一个浮点数字

parseInt(string)将一个字符串解析为一个整数 , 不是四舍五入操作 , 而是 切尾

String(object)将一个对象值转换为一个字符串

number(object)

11. 事件

属性 :

a. 窗口事件 , 只在 body 和 frameset 元素中才有效

onload 页面或图片加载完成时

onunload 用户离开页面时

b. 表单元素事件 , 在表单元素中才有效

onchange 框内容改变时

onsubmit 点击提交按钮时

onreset 重新点击鼠标按键时

onselect 文本被选择时

onblur 元素失去焦点时

onfocus 当元素获取焦点时

c 键盘事件 , 在 base,bdo,br,frame,frameset,head,html,iframe,meta,param,script, style,title 元素里都无效

onkeydown 按下键盘按键时

onkeypress 按下或按住键盘按键时

onkeyup 放开键盘按键时

d. 在 base,bdo,br,frame,frameset,head,html,iframe,meta,param,script,style,title 元 素 里都无效

onclick 鼠标点击一个对象时

ondblclick 鼠标双击一个对象时

onmousedown 鼠标被按下时

onmousemove 鼠标被移动时

onmouseout 鼠标离开元素时

onmouseover 鼠标经过元素时

onmouseup 释放鼠标按键时

e. 其他

onresize 当窗口或框架被重新定义尺寸时

onabort 图片下载被打断时

onerror 当加载文档或图片时发生错误时

自定义对象 :有初始化对象和定义构造函数的对象两种方法

a :初始化对象

例如:对象 ={属性 1:值 1; 属性 2:值 2;...... 属性 n:值 n}注意 :每个属性 /值对之间 用分号隔开;

b :定义构造函数的对象

例如 :

function 函数名 (属性 1, 属性 2,...... 属性 N){

this. 属性 1=属性值 1;

this. 属性 2=属性值 2;

this. 属性 n=属性值 n;

this. 方法名 1=函数名 1;

this. 方法名 2=函数名 2;

}

使用 dwr 实现 Ajax 的代码

使用 dwr 框架实现 Ajax(登录用户名验证 )

1. 导入 dwr.jar

2. 修改 web.xml, 添加代码

<servlet>

<servlet-name>dwr</servlet-name>

<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class> <init-param>

<param-name>debug</param-name>

<param-value>true</param-value>

</init-param>

</servlet>

<servlet-mapping>

<servlet-name>dwr</servlet-name>

<url-pattern>/dwr/*</url-pattern>

</servlet-mapping>

3. 在 /WEB-INF/下创建 dwr.xml 配置文件

<?xmlversion="1.0"encoding="UTF-8"?>

<!DOCTYPEdwr PUBLIC "-//GetAheadLimited//DTDDirect Web Remoting 2.0//EN""http://getahead.org/dwr/dwr20.dtd">

<dwr>

<allow>

<createcreator="new"javascript="JUserChecker">

<paramname="class"value="t.UserManager"/>

<includemethod="check"/>

</create>

</allow>

</dwr>

4. 在 jsp 页面中使用

<%@page language="java"pageEncoding="GBK"%>

<html>

<head>

<title>JSPfor LoginForm form</title>

<scripttype='text/javascript'src='dwr/interface/JUserChecker.js'> </script>

<scripttype='text/javascript'src='dwr/engine.js'></script> <scripttype='text/javascript'src='dwr/util.js'></script> <script>

function checkU(oCtl){

var uname=oCtl.value;

JUserChecker.check(uname,haolejiaowo);

}

function haolejiaowo(isExist){

if(isExist==1){

alert("hao");

}

else if(isExist==0){

alert("error");

}

}

</script>

</head>

<body>

<formaction=""name="form1">

<inputname="uname"onblur="checkU(this)">

</form>

</body>

</html>

使用 Ajax 技术实现页面动态添加下拉列表的值

1. 导入 dwr.jar

2. 修改 web.xml, 添加代码

3. 在 /WEB-INF/下创建 dwr.xml 配置文件

4. 在 jsp 页面中使用

<%@page language="java"pageEncoding="GBK"%>

<html>

<title>JSPfor LoginForm form</title>

<scripttype='text/javascript'src='dwr/interface/JUserChecker.js'></script> <scripttype='text/javascript'src='dwr/engine.js'></script>

<scripttype='text/javascript'src='dwr/util.js'></script>

<script>

function checkU(oCtl){

var uname=oCtl.value;

JUserChecker.check(uname,haolejiaowo);

}

function haolejiaowo(isExist){

document.getElementById("num").innerHTML=isExist;

}

</script>

</head>

<body>

<formaction=""name="form1">

<inputname="uname"onblur="checkU(this)">

<div></div>

</form>

</body>

</html>

使用 Ajax 技术传递 List 对象

1. 导入 dwr.jar

2. 修改 web.xml, 添加代码

3. 在 /WEB-INF/下创建 dwr.xml 配置文件

4. 在 jsp 页面中使用

<%@page language="java"pageEncoding="GBK"%>

<html>

<head>

<title>JSPfor LoginForm form</title>

<scripttype='text/javascript'src='dwr/interface/JUserChecker.js'></script> <scripttype='text/javascript'src='dwr/engine.js'></script>

<scripttype='text/javascript'src='dwr/util.js'></script>

<script>

function checkU(oCtl){

var uname=oCtl.value;

JUserChecker.check(uname,haolejiaowo);

}

function haolejiaowo(isExist){

for(i=0;i<isExist.length;i++){

alert(isExist[i]);

}

}

</head>

<body>

<formaction=""name="form1">

<inputname="uname"onblur="checkU(this)">

<div></div>

</form>

</body>

</html>

使用 Ajax 技术传递 Map 对象

1. 导入 dwr.jar

2. 修改 web.xml, 添加代码

3. 在 /WEB-INF/下创建 dwr.xml 配置文件

4. 在 jsp 页面中使用

<%@page language="java"pageEncoding="GBK"%>

<html>

<head>

<title>JSPfor LoginForm form</title>

<scripttype='text/javascript'src='dwr/interface/JUserChecker.js'></script> <scripttype='text/javascript'src='dwr/engine.js'></script>

<scripttype='text/javascript'src='dwr/util.js'></script>

<script>

function checkU(oCtl){

var uname=oCtl.value;

JUserChecker.check(uname,haolejiaowo);

}

function haolejiaowo(isExist){

alert(isExist["1"]);

}

</script>

</head>

<body>

<formaction=""name="form1">

<inputname="uname"onblur="checkU(this)">

<div></div>

</form>

</body>

</html>

使用 Ajax 技术传递 List 对象 , 其中 List 封装了三个 Person 类的实例

1. 导入 dwr.jar

2. 修改 web.xml, 添加代码

3. 在 /WEB-INF/下创建 dwr.xml 配置文件

<?xmlversion="1.0"encoding="UTF-8"?>

<!DOCTYPEdwr PUBLIC "-//GetAheadLimited//DTDDirect Web Remoting

2.0//EN""http://getahead.org/dwr/dwr20.dtd">

<dwr>

<allow>

<createcreator="new"javascript="JUserChecker">

<paramname="class"value="t.UserManager"/>

<includemethod="check"/>

</create>

<convertmatch="t.Person"javascript="Person"converter="bean"/> </allow>

</dwr>

4. 在 jsp 页面中使用

<%@page language="java"pageEncoding="GBK"%>

<html>

<head>

<title>JSPfor LoginForm form</title>

<scripttype='text/javascript'src='dwr/interface/JUserChecker.js'></script> <scripttype='text/javascript'src='dwr/engine.js'></script> <scripttype='text/javascript'src='dwr/util.js'></script>

<script>

function checkU(oCtl){

var uname=oCtl.value;

JUserChecker.check(uname,haolejiaowo);

}

function haolejiaowo(isExist){

for(i=0;i<isExist.length;i++){

alert(isExist[i].uname);

}

}

</script>

</head>

<body>

<formaction=""name="form1">

<inputname="uname"onblur="checkU(this)">

<div></div>

</form>

</body>

</html>

。

猜你喜欢

最安全有效的减肥药

最安全有效的减肥药

编辑:小徐

现在的减肥药真的是真假难分,在选择减肥药的同时也应该更加小心,减肥药多种多样,那么如何才能选择最安全有效的减肥药,也成了很多小仙女的内心疑问,下面就跟着不要了小视频在线观看小编一起看一下,如何选择最安全有效的减肥药。 最安全有效的减肥药选购方法 1、首先需要观察产品的外包装,在包装中可以看到其配方是不是含有激素,含有激素的减肥药对身体的内..

吃减肥药失眠

吃减肥药失眠

编辑:小徐

随着现在流行以瘦为美,很多人会不顾身体的健康选择减肥药,达到快速减肥瘦身的效果,但是很多减肥药都是有副作用的,副作用比较轻的就是失眠现象,那么吃减肥药出现失眠是怎么回事儿?如果出现失眠后,我们应该怎样缓解? 吃减肥药失眠是怎么回事 减肥药中富含安非他命,所以减肥药服用了太多会有失眠现象,服用减肥药期间,身体会逐渐出现抗药性,身..

最新文章