AJAX面试题

2023-11-08

1、什么是AJAX,为什么要使用Ajax(请谈一下你对Ajax的认识) 
什么是ajax: 
AJAX是“Asynchronous JavaScript and XML”的缩写。他是指一种创建交互式网页应用的网页开发技术。 
Ajax包含下列技术: 
基于web标准(standards-basedpresentation)XHTML+CSS的表示; 
使用 DOM(Document ObjectModel)进行动态显示及交互; 
使用 XML 和 XSLT 进行数据交换及相关操作; 
使用 XMLHttpRequest 进行异步数据查询、检索; 
使用 JavaScript 将所有的东西绑定在一起。 
2、为什么要用ajax: 
Ajax应用程序的优势在于: 
1. 通过异步模式,提升了用户体验 
2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 
3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。 
2、AJAX最大的特点是什么。 
Ajax可以实现动态不刷新(局部刷新) 
就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

3、请介绍一下XMLhttprequest对象。 
Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新。 
4、AJAX技术体系的组成部分有哪些。 
HTML,css,dom,xml,xmlHttpRequest,javascript 
5、AJAX应用和传统Web应用有什么不同。 
在传统的Javascript编程中,如果想得到服务器端数据库或文件上的信息,或者发送客户端信息到服务器,需要建立一个HTML form然后GET或者POST数据到服务器端。用户需要点击”Submit”按钮来发送或者接受数据信息,然后等待服务器响应请求,页面重新加载。 
因为服务器每次都会返回一个新的页面, 所以传统的web应用有可能很慢而且用户交互不友好。 
使用AJAX技术, 就可以使Javascript通过XMLHttpRequest对象直接与服务器进行交互。 
通过HTTP Request, 一个web页面可以发送一个请求到web服务器并且接受web服务器返回的信息(不用重新加载页面),展示给用户的还是通一个页面,用户感觉页面刷新,也看不到到Javascript后台进行的发送请求和接受响应。 
6、AJAX请求总共有多少种CALLBACK。 
Ajax请求总共有八种Callback 
onSuccess 
onFailure 
onUninitialized 
onLoading 
onLoaded 
onInteractive 
onComplete 
onException 
7.Ajax和JavaScript的区别。

javascript是一种在浏览器端执行的脚本语言,Ajax是一种创建交互式网页应用的开发技术 ,它是利用了一系列相关的技术其中就包括javascript。 
Javascript是由网景公司开发的一种脚本语言,它和sun公司的java语言是没有任何关系的,它们相似的名称只是一种行销策略。 
在一般的web开发中,javascript是在浏览器端执行的,我们可以用javascript控制浏览器的行为和内容。 
在 Ajax应用中信息是如何在浏览器和服务器之间传递的 
通过XML数据或者字符串 
8、在浏览器端如何得到服务器端响应的XML数据。 
XMLHttpRequest对象的responseXMl属性

9、 XMLHttpRequest对象在IE和Firefox中创建方式有没有不同。

有,IE中通过new ActiveXObject()得到,Firefox中通过newXMLHttpRequest()得到

10、介绍一下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 
12、什么是XML

XML是扩展标记语言,能够用一系列简单的标记描述数据

13、XML的解析方式 
常用的用dom解析和sax解析。dom解析是一次性读取xml文件并将其构造为DOM对象供程序使用,优点是操作方便,但是比较耗内存。Sax是按事件驱动的方式解析的,占用内存少,但是编程复杂 
14、你采用的是什么框架(架包)

这题是必问的,一般也是最开始就会问到。 
在java中比较流行的有 dojo, Prototype , JQuery, Dwr, extjs 等等 
15、如果熟悉某种ajax框架,他可能会问到怎样在程序中使用这种框架

DWR框架介绍 
DWR(DirectWeb Remoting)是一个WEB远程调用框架.利用这个框架可以让AJAX开发变得很简单.利用DWR可以在客户端利用JavaScript直接调用服务端的Java方法并返回值给JavaScript就好像直接本地客户端调用一样(DWR根据Java类来动态生成JavaScrip代码). 
DWR的实现原理是通过反射,将java翻译成javascript,然后利用回调机制,从而实现了javascript调用Java代码 
16、介绍一下Prototype的()函数,()函数,F()函数,$A()函数都是什么作用

()方法是在DOM中使用过于频繁的document.getElementById()方法的一个便利的简写,就像这个DOM方法一样,这个方法返回参数传入的id的那个元素。()方法是在DOM中使用过于频繁的document.getElementById()方法的一个便利的简写,就像这个DOM方法一样,这个方法返回参数传入的id的那个元素。F()函数是另一个大收欢迎的“快捷键”,它能用于返回任何表单输入控件的值,比如textbox,drop-down list。这个方法也能用元素id或元素本身做为参数。 
$A()函数能把它接收到的单个的参数转换成一个Array对象。

17、介绍一下XMLHttpRequest对象

通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新。 
AJAX开始流行始于Google在2005年使用的”Google Suggest”。 
“Google Suggest”就是使用XMLHttpRequest对象来创建动态的Web接口: 
当用户开始输入google的搜索框,Javascript发送用户输入的字符到服务器,然后服务器返回一个建议列表。 
XMLHttpRequest对象在IE5.0+, Safari 1.2, Mozilla1.0/Firefox, Opera 8+ 和NetScapt7 开始被支持。

18、AJAX的全称是什么? 介绍一下AJAX?

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

19、Ajax主要包含了哪些技术? 
Ajax(Asynchronous JavaScript + XML)的定义 
基于web标准(standards-based presentation)XHTML+CSS的表示; 
使用 DOM(Document Object Model)进行动态显示及交互; 
使用 XML 和 XSLT 进行数据交换及相关操作; 
使用XMLHttpRequest 进行异步数据查询、检索; 
使用 JavaScript 将所有的东西绑定在一起。英文参见Ajax的提出者Jesse James Garrett的原文,原文题目(Ajax: A New Approach to Web Applications)。 
类似于DHTML或LAMP,AJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术。事实上,一些基于AJAX的“派生/合成”式(derivative/composite)的技术正在出现,如“AFLAX”。 
AJAX的应用使用支持以上技术的web浏览器作为运行平台。这些浏览器目前包括:Mozilla、Firefox、Internet Explorer、Opera、Konqueror及Safari。但是Opera不支持XSL格式对象,也不支持XSLT。

20、AJAX都有哪些优点和缺点? 
1、最大的一点是页面无刷新,用户的体验非常好。 
2、使用异步方式与服务器通信,具有更加迅速的响应能力。 
3、可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。 
4、基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。 
ajax的缺点 
1、ajax不支持浏览器back按钮。 
2、安全问题 AJAX暴露了与服务器交互的细节。 
3、对搜索引擎的支持比较弱。 
4、破坏了程序的异常机制。 
5、不容易调试。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AJAX面试题 的相关文章

  • 统计字符串中,中文字符、英文字符和数字字符的数量

    package com suanfa public class ZYSTotal 统计字符串中 中文字符 英文字符和数字字符的数量 public static void main String args int englishCount 0
  • 2020前端实习大厂面试经验汇总(秋招加油!)

    这篇文章主要介绍了前端实习大厂的面试经验 主要包含了7个公司 华为 欢聚 京东 酷狗 美的 腾讯 网易 公司不分先后 感兴趣的朋友可以了解一下 祝大家秋招顺利 offer到手 华为CBG 通用软件开发 4 21 华为技术一面 45分钟 手撕
  • Java基础面试题附带答案

    091内部类可以引用它的包含类 外部类 的成员吗 有没有什么限制 一个内部类对象可以访问创建它的外部类对象的成员 包括私有成员 092Anonymous Inner Class 匿名内部类 是否可以继承其它类 是否可以 实现接口 可以继承其
  • 06-限流策略有哪些,滑动窗口算法和令牌桶区别,使用场景?【Java面试题总结】

    限流策略有哪些 滑动窗口算法和令牌桶区别 使用场景 常见的限流算法有固定窗口 滑动窗口 漏桶 令牌桶等 6 1 固定窗口 概念 固定窗口 又称计算器限流 对一段固定时间窗口内的请求进行一个计数 如果请求数量超过阈值 就会舍弃这个请求 如果没
  • 什么是乐观锁,什么是悲观锁?

    在互联网公司面试中 很多小伙伴都被问到关于锁的理解 今天 我给小伙伴们来聊一聊我对锁的理解 不管我们互斥锁 自旋锁 重入锁 读写锁 行锁 表锁等等等等这些概念 我把他们都归纳为两种类型 乐观锁和悲观锁 彻底讲明白Java中眼花缭乱的各种并发
  • Mysql中的读写锁,表锁和行锁,间隙锁

    Mysql数据库锁 锁是计算机协调多个进程或线程并发访问某一资源的机制 在数据库中 除传统的计算资源 如CPU RAM I O等 的争用以外 数据也是一种供许多用户共享的资源 如何保证数据并发访问的一致性 有效性是所有数据库必须解决的一个问
  • AQS详解

    AQS详解 文章目录 AQS详解 AQS简单介绍 AQS原理 AQS原理概览 AQS对资源的共享方式 AQS定义两种资源共享方式 Exclusive 独占 Share 共享 AQS底层使用了模板方法模式 Semaphore 信号量 Coun
  • MySQL面试之一条SQL是如何执行的

    一 MySQL 基础架构分析 1 1 MySQL 基本架构概览 下图是 MySQL 的一个简要架构图 从下图你可以很清晰的看到用户的 SQL 语句在 MySQL 内部是如何执行的 先简单介绍一下下图涉及的一些组件的基本作用帮助大家理解这幅图
  • 【Java面试题】计算机网络知识点总结

    计算机网络知识点总结 1 计算机网络体系结构图 1 1 传输层 TCP 和 UDP 的区别和作用 1 2 面向连接 和 面向无连接 的区别 1 3 基于TCP和UDP的有哪些协议 1 4 TCP和UDP协议的使用场景 1 5 TCP 协议如
  • 牛客面试题库(9)

    请你说说索引怎么实现的B 树 为什么选这个数据结构 说到B 树 一般和B树做对比 都是多叉树 B 数组叶子结点存储数据 其他节点存储索引 而B树每个节点都存储数据 B 树叶子结点内通过单向链表连接 节点和节点之间通过双向链表连接 从磁盘IO
  • 【面试题】-java分布式及微服务面试题汇总

    目录 1 CAP理论 2 BASE理论 3 接口的幂等性问题 4 消息中间件如何解决消息丢失问题 5 什么是分布式事务 分布式事务的类型有哪些 6 分布式事务的解决方案有哪些 7 Dubbo的服务请求失败怎么处理 10 Soa和微服务架构有
  • 并发编程(线程)面试题总结2022

    目录 并发编程三要素是什么 在 Java 程序中怎么保证 多线程 的运行安全 什么是多线程 多线程的优劣 形成死锁的四个必要条件是什么 创建线程有哪几种方式 继承 Thread 类 实现 Runnable 接口 实现 Callable 接口
  • 计算机网络基础知识归纳总结整理

    计算机网络基础 基础知识 1 网络模型 OSI分层 7层 物理层 数据链路层 网络层 传输层 会话层 表示层 应用层 TCP IP分层 4层 网络接口层 网际层 运输层 应用层 五层协议 5层 物理层 数据链路层 网络层 运输层 应用层 每
  • Java常见面试题汇总-----------数据库(数据库索引及其实现)

    54 数据库索引 索引的优缺点 优点 1 大大加快数据的检索速度 2 创建唯一性索引 保证数据库表中每一行数据的唯一性 3 加速表和表之间的连接 4 在使用分组和排序子句进行数据检索时 可以显著减少查询中分组和排序的时间 缺点 1 索引需要
  • 工程师事业的思考(分享一些好的面试题)

    题记 最近去参加了一场技术交流会 小圈子内的技术交流 有来自大厂的一些高层工程师 做技术嘛 这条路其实是木有尽头的 说到底还是得要基础好哇 我目前是在做区块链行业 做数字货币交易所 然后很多朋友就是觉得非常不理解了嘛 就像李笑来说的那样 可
  • get和post区别

    get和post区别 get参数通过url传递 post放在request body中 get请求在url中传递的参数是有长度限制的 而post没有 get比post更不安全 因为参数直接暴露在url中 所以不能用来传递敏感信息 get请求
  • 十七、定时任务

    一 为什么需要定时任务 相关业务场景多 例如 1 凌晨一点进行相关数据同步 2 定时发送文章 3 半小时全量推送某些数据给用户 二 单机定时任务 Timer java util Timer是 JDK 1 3 开始就已经支持的一种定时任务的实
  • java各类型String,int,char,long,StringBuilder,StringBuffer,Integer之间的转换总结

    String和char类型之间的转换 1 String char 因为String是字符串 而char是单个字符 只能把String 转化为char数组 方法为 char ch str toCharArray 2 char String 方
  • Java基础面试题(三) (2020持续更新)

    前言 全套面试题请直接转到文章末尾 1 Java 中能创建 volatile 数组吗 能 Java 中可以创建 volatile 类型数组 不过只是一个指向数组的引用 而不 是整个数组 我的意思是 如果改变引用指向的数组 将会受到 vola
  • Java面试题大全(2021版)

    发现网上很多Java面试题都没有答案 所以花了很长时间搜集整理出来了这套Java面试题大全 希望对大家有帮助哈 本套Java面试题大全 全的不能再全 哈哈 博主已将以下这些面试题整理成了一个Java面试手册 是PDF版的 关注博主的微信公众

随机推荐

  • 调试最长的一帧(第14天)

    看看流程 可见分页数据库的更新也是和场景的筛选绘制是同时进行的 再看看大图 第14天要进行左下角的 依照惯例 跟过去 现在开始步入正轨 发现第0个fileName为空 这是有问题的 创建pagelod时修正为 这次进来了 在这里删除 放入r
  • HTML5+CSS3D酷炫相册

    HTML5 CSS3D酷炫相册 图片预览 目录结构 源码 HTML
  • 2:数据结构复习线性表(一般集合的并集:链式解决方案)

    线性表的合并 例2 1 求解一般集合的并集问题 问题描述 已知两个集合A和B 现要求一个新的集合A AUB 例如 设 A 7 5 3 11 B 2 6 3 合并后 A 7 5 3 11 2 6 问题分析 可以利用两个线性表LA和LB分别表示
  • 数组最大连续子序列和

    题目 给定一个数组 其中元素可正可负 求其中最大连续子序列的和 这题是一道非常经典的面试题 会经常出现在各种面试中 具体有好几种不同时间复杂度的解法 那么最好的方法是用动态规划方法来求解 第一种 时间复杂度为O n 3 暴力法求解 三层循环
  • events.js:183 throw er; // Unhandled 'error' event 相关问题解决办法

    在启动项目的时候可能会出现以下问题 出现原因 出现这个问题的主要原因是因为端口被占用了 解决办法 查询端口号是否被占用 netstat aon findstr 8000 找到对应程序 tasklist findstr 9060 再任务管理器
  • 2015款Mac笔记本安装Windows10系统到外置移动硬盘教程

    终于把2015年的15寸Macbook Pro笔记本安装上了Windows10操作系统 并且是在外置的移动硬盘上安装的 运行的效果和用户体验也是非常棒 之前网上购买了加密的视频 但是这个视频必须是windows系统 还不能是虚拟机里面的系统
  • QT关键问题解决之paintevent理解

    基础概念 paintEvent QPaintEvent 函数是QWidget类中的虚函数 用于ui的绘制 会在多种情况下被其他函数自动调用 比如update 时 运行时机 一个重绘事件用来重绘一个部件的全部或者部分区域 下面几个原因的任意一
  • 中移动 NB-IoT (M5310-A)学习笔记

    一 来自 M5310 A硬件设计手册V1 5 DCE Data Communication EquipmentDTE Data Terminal Equipment 模块的三种工作模式 模式 描述 Active 模块处于活动状态 所有功能正
  • CreateFile之类的几个函数

    这几天看windows API一日一练 博主给画出了道道 我来填填具体点的内容 需求 想操作文件 串口 并口 USB等等 原理层 其实很简单 就三步 打开 操作 然后关闭 实践层1 打开用CreateFile 读写操作用WriteFile
  • 宝塔面板部署nginx+springboot+netty

    nginx配置集成netty的springboot前后端分离项目 项目环境 CentOS 7 9 宝塔面板 nginx1 21 前后端分离项目按照日常部署方式部署到服务器 前往nginx配置文件nginx conf 配置TCP socket
  • 两台机器之间同步时间,并修改服务器层级

    作业a 第一台机器从阿里云同步时间 第二台机器从第一台机器同步时间 第一台机器配置 vim etc chrony conf 修改第一台机器的配置文件 将原有的pool注释掉 并添加阿里云时钟源 gt server ntp aliyun co
  • C++实现两个字符串交替组合成一个字符串

    引言 这道题来自力扣 给出两个字符串 将两个字符串交替着组合成一个字符串 如 string str1 abcd string str2 hb string str ahbbcd string str1 abcd string str2 hb
  • kafka高性能设计:内存池

    前言 Kafka的内存池是一个用于管理内存分配的缓存区域 它通过在内存上保留一块固定大小的内存池 用于分配消息缓存 批处理缓存等对象 以减少频繁调用内存分配函数的开销 Kafka内存池的实现利用了Java NIO中的 ByteBuffer
  • 罗技键盘连计算机,罗技键盘怎么连接电脑

    罗技蓝牙键盘连接电脑需装入电池 打开电源开关 转动拨盘至 1 位置 然后长按 PC 键3秒进入 搜索 模式 打开电脑 前往 设置 设备 蓝牙和其他设备 打开 蓝牙 在蓝牙搜索列表中选中罗技蓝牙键盘的名称 确认配对即可完成连接 本文以惠普光影
  • 搭建tcp客户端,双进程实现tcp服务端客户端随时收发,udp服务端客户端

    tcp客户端 include
  • HTML+CSS简易淘宝页面

    效果图 效果图中的图片可以去我微信公众号新白者 回复照片就行 HTML代码 注意这个外部链接引入css的名字与自己的相同 div div div a a div div div
  • 自动化测试开发 —— 如何封装自动化测试框架?

    封装自动化测试框架 测试人员不用关注框架的底层实现 根据指定的规则进行测试用例的创建 执行即可 这样就降低了自动化测试门槛 能解放出更多的人力去做更深入的测试工作 本篇文章就来介绍下 如何封装自动化测试框架 1 明确自动化测试框架需求 支持
  • 两数相加—思路和心得

    题目链接 https leetcode cn com problems add two numbers Definition for singly linked list public class ListNode int val List
  • Python运算符重载及其可重载运算符

    每个类型都有其独特的操作方法 例如列表类型支持直接做加法操作实现添加元素的功能 字符串类型支持直接做加法实现字符串的拼接功能 也就是说 同样的运算符对于不同序列类型的意义是不一样的 这是怎么做到的呢 其实在 Python 内部 每种序列类型
  • AJAX面试题

    1 什么是AJAX 为什么要使用Ajax 请谈一下你对Ajax的认识 什么是ajax AJAX是 Asynchronous JavaScript and XML 的缩写 他是指一种创建交互式网页应用的网页开发技术 Ajax包含下列技术 基于