文档库 最新最全的文档下载
当前位置:文档库 › Javascript面试题以及答案

Javascript面试题以及答案

Javascript面试题以及答案
Javascript面试题以及答案

Javascript面试题

1)谈一谈你对javascript的理解,javascript能做什么

理解:javascript是主要用在web中的一种动态的解析型语言。

可以改变网页里的数据,根据用户点击等操作告诉服务器可以动态的改变网页的大小。JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言,是一种轻量级的编程语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作,可以将动态的文本放入HTML 页面, 可以对事件作出响应, 可以读写HTML 元素, 可被用来验证数据, 可被用来检测访问者的浏览器, 可被用来创建cookies

2)在javascript中如何检测客户端的浏览器和操作系统类型

var resolution = "分辨率:" + window.screen.width + "*" + window.screen.height;,

var ua = https://www.wendangku.net/doc/9f16874099.html,erAgent;

3)Cookie在客户机上是如何存储的

Cookies就是服务器暂存放在你的电脑里的文本文件,好让服务器用来辨认你的计算机。当你在浏览网站的时候,Web服务器会先送一小小资料放在你的计算机上,Cookies 会帮你在网站上所打的文字或是一些选择都记录下来。当下次你再访问同一个网站,Web服务器会先看看有没有它上次留下的Cookies资料,有的话,就会依据Cookie里的内容来判断使用者,送出特定的网页内容给你。

4)什么是javascript的同源策略

这一策略对于JavaScript代码能够访问的页面内容做了很重要的限制,即JavaScript只能访问与包含它的文档在同一域下的内容。

5)Prompt box是什么?它的返回值有什么用?

prompt() 方法用于显示可提示用户进行输入的对话框。如果用户单击提示框的取消按钮,则返回null。如果用户单击确认按钮,则返回输入字段当前显示的文本。

在用户点击确定按钮或取消按钮把对话框关闭之前,它将阻止用户对浏览器的所有输入。在调用prompt() 时,将暂停对JavaScript 代码的执行,在用户作出响应之前,不会执行下一条语句。

6)如何获取javascript所能表示的最大值和最小值

alert(Math.max.apply(null, a));//最大值

alert(Math.min.apply(null, a));//最小值

7)Null和Undefined有和区别与联系

null :表示无值;

undefined : 表示一个未声明的变量,或已声明但没有赋值的变量,或一个并不存在的对象属性。

8)如何理解javascript中的variable typing,试用代码说明

js的基本数据类型:number(数字类型),string(字符串),boolean(布尔类型true/false)

//null(空类型只有一个值null)在使用typeof测试类型时,返回object。

//undefine(未定义类型)未定义类型只有一个值underfine

9)Javascript是否有块级作用域?即在代码块中定义的变量,出了代码块是否可以被访问到

有/没有

for(var i=0;i<10;i++){

var a = 12;

}

alert(i + “:” + a ) ; //没有

在function里时,则不能访问,出了方法就不能了

10)“10”==10是否为真,“10”===10是否为真?0.1+0.2==0.3是否为真?1+2==3是否为真?

alert("10" = = 10);//真alert("10" == = 10); //假alert(0.1+0.2); //0.300000004

alert(0.1+0.2 == 0.3); //假alert(1+2 == 3);//真

11)如何理解javascript中的对象

JavaScript 中的所有事物都是对象:字符串、数值、数组、函数... 用function定义

12)假设为页面的onload事件指定了事件处理函数,如何删除该事件处理函数。如何为一个事件指定两个或多个处理函数。

function addLoadEvent(func){

var oldonLoad = window.onload;

if(typeof window.onload!='function'){

window.onload = func;

}

else{

window.onload = function(){

oldonload();

func();

}

}

}

addLoadEvent函数主要是完成如下的操作:

1、把现有的window.onload事件处理函数的值存入到oldonload中。

2、如果在这个处理函数上还没有绑定任何函数,就将该函数添加给它。

3、如果在这个处理函数上已经绑定了一些函数,就把该函数追加到现有指定的末尾。

通过addLoadEvent函数,只需要调用该函数就可以进行绑定了。

13)写一个函数,返回指定的英文句子中的每个单词及其字符的起止位置,单词间使用一个空格隔开

按空格拆分到数组里,取出每个元素

14)10 构造一个自定义对象,实现对一个矩形的对象化,要求:

a) 描述矩形的标识(name)

b) 描述矩形的颜色(color)

c) 描述矩形的宽度(width)

d) 描述矩形的高度(height)

e) 提供获取矩形面积的方法(getArea())

f) 写出构造函数的完整代码

g) 给出调用的实例代码

15)编写一个JavaScript函数,实时显示当前时间格式为—年—月—日时:分:秒

16)使用JavaScript深度克隆一个对象?

17)编写JavaScript脚本隐藏一个超级链接真实的地址。

18)如何知道下拉列表框中当前选中的是第几个选项,如何获取该选项的值和文本

19)frame之间如何交换数据,frame和iframe有什么区别,iframe有哪些用途。window.parent.frames

它不同于Frame标记最大的特征即这个标记所引用的HTML文件不是与另外的HTML文件相互独立显示,而是可以直接嵌入在一个HTML文件中,与这个HTML文件内容相互融合,成为一个整体;因为它可以多次在一个页面内显示同一内容,而不必重复写内容,所以人们形象称这种效果为“画中画”。

Iframe还有一个更大的好处,就是可以设置框架透明,让框架内的背景和主页面背景一样.可以不知不觉的交互数据

20)如何检查某个文档加载完成,文档加载完成时会触发什么事件。

document.readyState == “complete”//判断是否加载完成

21)如何给打开的模态对话框传参数,在模态对话框中如何获取传入的参数?

parent.window.returnV alue

javascript试题及答案

javascript试题 一、单选题 1、以下哪条语句会产生运行错误:(A) A.var obj = ( ); B.var obj = [ ]; C.var obj = { }; D.var obj = / /; 2、以下哪个单词不属于javascript保留字:(B) A. with B. parent C. class D. void 3、请选择结果为真的表达式:(C) A. null instanceof Object B. null === undefined C. null == undefined D. NaN == NaN 二、不定项选择题 4、请选择对javascript理解有误的:(ABCD) A. JScript是javascript的简称 B. javascript是网景公司开发的一种Java脚本语言,其目的是为了简化Java的开发难度 C. FireFox和IE存在大量兼容性问题的主要原因在于他们对javascript的支持不同上 D. AJAX技术一定要使用javascript技术 5、foo对象有att属性,那么获取att属性的值,以下哪些做法是可以的:(ACE) A. foo.att B. foo(“att”) C. foo[“att”] D. foo{“att”} E. foo[“a”+”t”+”t”] 6、在不指定特殊属性的情况下,哪几种HTML标签可以手动输入文本:(AB) A. B. C. D.

7、以下哪些是javascript的全局函数:(ABC) A. escape B. parseFloat C. eval D. setTimeout E. alert 8、关于IFrame表述正确的有:(ABCD) A. 通过IFrame,网页可以嵌入其他网页内容,并可以动态更改

WEB前端面笔试题总结

1. 如何显示/隐藏一个DOM元素? 更改元素的css style,设为display: none。此外还可以将visibility设为hidden,透明度设为0,或长、宽设为0。 2. 一个定宽网页在浏览器(IE6,IE7,Firefox,IE5)中横向居中对齐的布局, 请写出主要的HTML标签及CSS。 1. 2. 3. 4. 5.居中 6. 11. 12. 13.

居中
14.

15. 3. CSS中margin和padding的区别 margin是外边距,属于元素之外,相邻元素的margin可以融合。 padding是内边距,在元素之内,相邻元素的padding不可融合。 4. JavaScript中如何检测一个变量是一个String类型?请写出函数实现 function(obj) { returntypeof(obj) == ”string”; } 5. 网页中实现一个计算当年还剩多少时间的倒数计时程序,要求网页上实时动态 显示“××年还剩××天××时××分××秒” 这个看我论坛右上角的就知道了… 6. 如何控制网页在网络传输过程中的数据量 题目貌似有问题,应该是减少数据量吧。 最显著的方法是启用GZIP压缩。此外保持好的编码习惯,避免重复和css、 JavaScript代码,多余的HTML标签和属性。 7. 补充代码,是鼠标单击后Button1到Button2的后面

var parent =this.parentNode; parent.removeChild(this); parent.appendChild(this); 8. Linux中,将a、b打包为back.tar,命令是() 不知道=。= 9. Flash、Ajax各自的优缺点,在使用中如何取舍? Flash的缺点是需要客户端安装Flash插件,比较大,且更改了默认的HTML页面行为;但可以方便地实现很多特效及动画,且具有较高权限。 Ajax的缺点是编程较为复杂,需要服务器端的支持,能实现的效果只能是DOM API 提供的,权限很低,较难跨域;但可以显著加快页面的载入速度和用户体验。 此外,二者都不能被搜索引擎索引(Google已支持Flash文本的索引),不利于SEO。 建议:重要和关键部分直接用HTML,交互部分可以使用Ajax,复杂的动画可采用Flash。 百度2010 1、JS主要数据类型?5分

JavaScript实验

实验项目:浏览器脚本语言及其应用 实验类型:设计 实验课时:4 实验目的:研究javascript及其应用 实验方案: 1 研究将JavaScript引入HTML页面 创建一个HTML文件,容如下。在浏览器中打开该文件。分析代码。

3 研究JavaScript名称 创建一个HTML文件,容如下。在浏览器中打开该文件。分析代码。 3 研究JavaScript值 创建一个HTML文件,容如下。在浏览器中打开该文件。分析代码。 2降序排列 数组数字大小排序

降序排列: 这里写个数组var array=[59,689,62,92,68,10]; 降序输出 ②字符串的交叉合并练习

html+css+js面试题

html+css+js面试题 87 . 如何求得2和4中最大的数? A) Math.ceil(2,4) B) Math.max(2,4) C) ceil(2,4) D) top(2,4) 88 . 打开名为“window2”的新窗口的JavaScript语法是? A) open.new("https://www.wendangku.net/doc/9f16874099.html,","window2") B) window.open("https://www.wendangku.net/doc/9f16874099.html,","window2") C) new("https://www.wendangku.net/doc/9f16874099.html,","window2") D) new.window("https://www.wendangku.net/doc/9f16874099.html,","window2") 89 . 如何在浏览器的状态栏放入一条消息? A) statusbar = "put your message here" B) window.status = "put your message here" C) window.status("put your message here") D) status("put your message here") 90.下列不属于文档对象的方法的是() A)createElement B)getElementById C)getElementByName D)forms.length 91.下面这段代码运行的结果() A)弹出一个对象框 B)没有任何输出 C)在文档中显示文档最后修改的时间

ajax试题与答案

Ajax试题 选择题10道: 1. AJAX术语是由哪家公司或组织最先提出的? a. Google b. IBM c. Adaptive Path d. Dojo Foundation 正确答案:c 2. 以下哪一个Web应用不属于Ajax应用? a. Hotmail b. GMaps c. Flickr d. Windows Live 正确答案:a 3. 以下哪个技术不是Ajax技术体系的组成部分? a. XMLHttpRequest b. DHTML c. CSS d. DOM 正确答案:b 4. XMLHttpRequest对象有几个返回状态值? a. 3 b. 4 c. 5 d. 6 正确答案:c 5. 下列哪些方法或属性是Web标准中规定的? a. all() b. innerHTML c. getElementsByTagName() d. innerText 正确答案:c 6. 以下哪一个CSS属性不属于W3C的CSS2规范? a. list-style-position b. min-height c. float d. text-overflow 正确答案:d

7. 下列哪个工具不能用来调试浏览器中的JavaScript? a. MS Visual InterDev b. Eclipse c. MS Script Debugger d. Mozilla Venkman 正确答案:b 8. 应用以下哪一个DOCTYPE使得当前主流浏览器解释CSS的模式是Quirks mode? a. b. c. d. 正确答案:b 9. 关于JavaScript中的函数和对象,下列说法不正确的是: a. 每一个函数都有一个prototype对象。 b. 函数就是一个特殊类型的对象。 c. 函数附属于它所附加到的对象上,只能通过该对象访问。 d. 同一个函数可以被附属到多个对象上。 正确答案:c 10. 创建一个对象obj,该对象包含一个名为"name"的属性,其值为"value" 。以下哪一段JavaScript代码无法得到上述的结果? a. var obj = new Object(); obj["name"] = "value"; b. var obj = new Object(); https://www.wendangku.net/doc/9f16874099.html, = "value"; c. var obj = {name : "value"}; d. var obj = new function() { https://www.wendangku.net/doc/9f16874099.html, = "value"; } 正确答案:b

javascript实验

长江职业学院Javascript语言程序设计实验指导书 专业: 学号: 姓名: 班级: 指导老师: 软件教研室编

实验一 JavaScript基本操作 一、实验目的 熟练掌握在HTML文件中编写JavaScript程序的基本操作,及在Microsoft Internet Explorer浏览器和Netscape的Nevigator浏览器中调试JavaScript的基本操作。 二、实验内容 1、用NotePad创建一个简单的.htm文件,在Microsoft Internet Explorer浏览器中浏览效果。 2、编写第1章中的实例源文件,并在Microsoft Internet Explorer浏览器中进行测试。 3、调试一段JavaScript程序,找出其中的错误。 三、实验步骤 1、通过windows的文件管理器,在c盘下新建一个文件夹jsp_ex,用于保 存实验中的文件,如图1-1所示。 2、在windows中打开“记事本”,(也可以用其他编辑html文件的工具软 件,如Microsoft frontpage,Macromedia Dreamweaver等,编写例1-1的程序,然后将文件保存在C:\jsp_ex文件夹中。 3、用下述任意一种方法,在浏览器中显示,如图1-2。

A.在图1-1中双击“”文件名。 B.在图1-1中用鼠标右键单击“”,在打开的菜单列表中,如果有所需浏览器名就可以直接点击浏览器名。 C.现在windows中打开所需浏览器,然后按【ctrl】+【o】,在打开的对话框中找到文件。 4、再次编辑文件,将第21行中的“”改写为“”然后按第3步的操作, 得到如图1-3的效果,不能显示“上一次网页更新日期”,这时,通过浏览器的调试工具查找出出错的位置,修改后再次测试。 5、按1-2的步骤,将例1-1改写为“”和“”两个文件即通过外部javascript 文件和html文件一起完成网页的制作。 四、思考练习 1.为什么“上一次网页更新日期”在每一次打开都是同一个时间 2.请写出你在程序编写中出现的错误和改正方法,并分析。

JavaScript精选面试题

一选择题(单选) 1、以下哪条语句会产生运行错误:() A.var obj = (); B.var obj = []; C.var obj = {}; D.var obj = //; 答案:A 2、以下哪个单词不属于javascript保留字:() A.with B.parent C.class D.void 答案:B 3、请选择结果为真的表达式:() A.null instanceof Object B.null === undefined C.null == undefined D.NaN == NaN 答案:C 二、不定项选择题 4、请选择对javascript理解有误的:() A.JScript 是javascript的简称 B.javascript是网景公司开发的一种Java脚本语言,其目的是为了简化Java的开发难度 C.FireFox 和IE存在大量兼容性问题的主要原因在于他们对javascript 的支持不同上 D.AJAX技术一定要使用javascript技术 答案:ABCD 5、foo对象有att属性,那么获取att属性的值,以下哪些做法是可以的:() A.foo.att B.foo(“att”) C.foo[“att”] D.foo{“att”} E.foo[“a”+”t”+”t”] 答案:ACE

6、在不指定特殊属性的情况下,哪几种HTML标签可以手动输入文本:() A. B. C. D.

答案:AB 7、以下哪些是javascript的全局函数:() A.escape B.parseFloat C.eval D.setTimeout E.alert 答案:ABC 8、关于IFrame表述正确的有:() A.通过IFrame,网页可以嵌入其他网页内容,并可以动态更改 B.在相同域名下,内嵌的IFrame可以获取外层网页的对象 C.在相同域名下,外层网页脚本可以获取IFrame网页内的对象 D.可以通过脚本调整IFrame 的大小 答案:ABCD 9、关于表格表述正确的有:() A.表格中可以包含TBODY元素 B.表格中可以包含CAPTION元素 C.表格中可以包含多个TBODY元素 D.表格中可以包含COLGROUP元素 E.表格中可以包含COL元素 答案:ABCDE 10、关于IE的window对象表述正确的有:() A.window.opener属性本身就是指向window对象 B.window.reload() 方法可以用来刷新当前页面 C.window.location=”a.html”和window.location.href=”a.html”的作用都是把当前页面替换成a.html页面 D.定义了全局变量g;可以用window.g的方式来存取该变量 答案:ACD 三、问答题

JavaScript程序设计试题一及答案

JavaScript程序设计试题一及答案 一、单选题 1、以下哪条语句会产生运行错误:() A.var obj = ( ); B.var obj = [ ]; C.var obj = { }; D.var obj = / /; 2、以下哪个单词不属于javascript保留字:() A. with B. parent C. class D. void 3、请选择结果为真的表达式:() A. null instanceof Object B. null === undefined C. null == undefined D. NaN == NaN 二、不定项选择题 4、请选择对javascript理解有误的:( ) A. JScript是javascript的简称 B. javascript是网景公司开发的一种Java脚本语言,其目的是为了简化Java 的开发难度 C. FireFox和IE存在大量兼容性问题的主要原因在于他们对javascript的支持不同上 D. AJAX技术一定要使用javascript技术 5、foo对象有att属性,那么获取att属性的值,以下哪些做法是可以的:() A. foo.att B. foo(“att”) C. foo[“att”] D. foo{“att”} E. foo[“a”+”t”+”t”] 6、在不指定特殊属性的情况下,哪几种HTML标签可以手动输入文本:() A. B. C. D.

7、以下哪些是javascript的全局函数:() A. escape B. parseFloat C. eval D. setTimeout E. alert 8、关于IFrame表述正确的有:( )

js面试题大全

解释AJAX? Ajax的全称是:AsynchronousJavaScript+XML Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。 Ajax(AsynchronousJavaScriptandXML)是结合了Java技术、XML以及JavaScript等编程技术,可以让开发人员构建基于Java技术的Web应用,并打破了使用页面重载的惯例。 Ajax是使用客户端脚本与Web服务器交换数据的Web应用开发方法。这样,Web页面不用打断交互流程进行重新加裁,就可以动态地更新。使用Ajax,用户可以创建接近本地桌面应用的直接、高可用、更丰富、更动态的Web用户界面。 ajax有什么组成,各组件作用是什么? 由JavaScript、CSS、DOM、XMLHttpRequest组成。 JavaScript:将所有的东西绑定在一起。 CSS:级联样式表 DOM:进行动态显示及交互。 XMLHttpRequest:进行异步数据查询、检索。 写出ajax的编程六步骤? 触发一个事件 创建一个XMLHttpRequest请求 设置回调函数 打开一个链接open() 发送请求send() 编写处理请求函数(回调函数) ajax中向服务器发送消息的get和post有什么区别? get:参数以URL方式进行提交,参数用来提交给服务器看,需要服务器端主动拿取。get不安全,而且URL 长度有限制,编码问题也会出现。 post:参数包含在请求体中提交,服务器端直接从请求中获得数据。 写出AJAX中处理从服务器得到的数据的两种方式? (1)以文本字符串的方式返回服务器的响应 (2)以XMLDocument对象方式返回响应 什么是JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。JSON采用完全独立于语言的文本格式,但是也使用了类似于高级语言的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。 写出JSON的具体形式?

HTML和JavaScript综合练习题2014答案

HTML和JavaScript综合练习题 一、单项选择 1.Web使用( D )在服务器和客户端之间传输数据。 A.FTP B. Telnet C. E-mail D. HTTP 2.HTTP服务默认的端口号是(D)。 A. 20 B. 21 C. 25 D. 80 3.HTML是一种标记语言,由( C )解释执行。 A.Web服务器 B.操作系统 C. Web浏览器 D.不需要解释 4.下列哪个标签是定义标题的 ( A )。 A.h1 B.hr C.hw D.p 5.html中的注释标签是( C )。 A.<-- --> B.<--! --> C. D.<-- --!> 6.标签的作用是( D )。 A.斜体B.下划线C.上划线D.加粗 7.网页中的空格在html代码里表示为( B )。 A.& B.  C." D.< 8.定义锚记主要用到标签中的( A )属性。 A.name B.target C.onclick D.onmouseover 9.要在新窗口中打开所点击的链接,实现方法是将标签的target属性设为( A )。 A._blank B._self C._parent D._top 10.下列代表无序清单的标签是( A )。 A.

B.
C.
  • D.< li >…
    … 第 1 页共11 页

    11.定义表单所用的标签是( B )。 A.table B.form C.select D.input 12.要实现表单元素中的复选框,input标签的type属性应设为( B )。 A.radio B.checkbox C.select D.text 13.要实现表单元素中的单选框,input标签的type属性应设为( A )。 A.radio B.checkbox C.select D.text 14.要使单选框或复选框默认为已选定,要在input标签中加( D )属性。 A.selected B.disabled C.type D.checked 15.要使表单元素(如文本框)在预览时处于不可编辑状态,显灰色,要在input中加( B ) 属性。 A.selected B.disabled C.type D.checked 16.如果希望能在网页上显示大于(>),可以使用( A )符号来表示。 A.> B.< C." D.& 17.alert();的作用是:( A )。 A.弹出对话框,该对话框的内容是该方法的参数内容。 B.弹出确认对话框,该对话框的要用户选择“确认”或“取消”。 C.弹出输入对话框,该对话框的可让用户输入内容。 D.弹出新窗口。 18.看以下JavaScript程序 var num; num=5+true; 问:执行以上程序后,num的值为( D )。 A.true B.false C.5 D.6 19.看以下JavaScript程序 var x=prompt(“请输入1-5的数字!”,“”); switch (x) case “1”:alert(“one”); case “2”:alert(“two”); case “3”:alert(“three”); case “4”:alert(“four”); case “5”:alert(“five”); default:alert(“none”); 运行以上程序,在提示对话框中输入“4”,依次弹出的对话框将输出: ( B )。 A.four,none 第 2 页共11 页

    IT公司面试笔试题库腾讯Javascript面试题

    1. 以下关于JavaScript的说法,哪一个是正确的: (A) JavaScript语言是基于Java语言的一种实现 (B) JavaScript是一种解释性语言,不用编译就可以运行 (C) 在JavaScript中声明变量时必须明确声明变量的数据类型 (D) JavaScript脚本只能在浏览器中运行 2. 在以下代码段中,哪些变量是全局变量? (A) 只有a (B) a和c (C) b和c (D) a、b、c都是 3. 以下关于事件属性的说法,错误的是: (A) onmouseup事件属性表示当鼠标按键被松开时执行脚本 (B) onabort是img元素的事件属性,表示当图像加载中断时执行脚本 (C) onload事件仅在body和frameset元素中有效 (D) 任何元素都有onclick事件属性 4. 以下创建函数的代码,错误的是: (A) function foo() { alert("hi"); } (B) var foo = function() { alert("hi"); } (C) var foo = new Function("", "alert('hi');" ); (D) var foo() { alert("hi"); } 5. 以下描述中错误的一个是: (A) 执行语句var a; alert(a),打印的内容为undefined (B) 执行语句var a = window.age; alert(a),打印的内容为undefined (C) 执行语句var a,b; a = typeof(b); alert(a),打印的内容为undefined (D) 执行语句var a,b=null; a = typeof(b); alert(a),打印的内容为undefined 6. 执行下面的代码打印出来的结果,正确的是: (A) 4 (B) 5 (C) 6 (D) 7 7. 以下创建自定义对象的写法,错误的是: (A)

    原版Javascript程序设计实验指导书

    《Javascript程序设计》实验指导书 一、课程性质和教学目的 JavaScrip是一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。 学习Javascript必须理论联系实际,多做上机练习。只有在上机实验过程中才能真正学会程序设计。本实验报告主要包括学期内各个实验的实验目的、实验内容、实验记录、实验总结等,供学生学习记录,以提高学习效率。参加实验的学生应参照本报告手册的要求,认真实验,如实填写实验数据,并对实验结果进行分析,阐述实验中所遇到的问题,提出解决问题的方法。 二、实验目的 上机实验的目的不仅是为了验证教材和讲课的内容,或者验证自己所编写的程序正确与否。学习程序设计上机实验的目的是: 1.加深对讲授内容的理解,尤其是一些语法规定,课堂讲授既枯燥无味又难以记忆,但它们都很重要。能过多次上机就能自然地、熟练地掌握。通过上机掌握语法是行之有效的方法。 2.学会上机调试程序。即善于发现程序中的错误,并且能很快排除这些错误,使程序能正确运行。要真正掌握这门课程,不仅应当了解和熟悉有关理论和方法,还要求自己动手实现即会编程并上机调试通过。故应给予充分重视。调试程序固然可以借鉴他人的现成经验,但更重要的是通过自己的直接实践来累积经验,而且有些经验是只能意会难以言传。调试程序的能力是每个程序设计人员应当掌握的一项基本功。 3.做实验时不要在程序通过后就认为搞定、完成任务了,而应当在己通过的程序甚而上作一些改动(例如修改一些参数、增加程序一些功能、改变输入数据的方法等),以观察和分析所出现的情况。 三、上机实验前的准备工作 实验前应做好准备工作,以充分利用有限的上机时间。准备工作至少包括: 1.复习和掌握本实验有关的教学内容。 2.准备好上机所需的程序。初学者切忌不编写程序或抄别人的程序去上机,应从一开始就养成严谨的科学作风。 3.对运行上可能出现的问题应事先作出估计;对程序中自己有疑问的地方,应作上记号,以便在上机时给予注意。 4.根据实验内容认真准备实验程序及调试时所需的输入数据。 5.在上实验课之前必须写好预习报告(编程题源程序用纸写好或画好程序流程图) 6.填空与改错题等题要预先做好,上机时的工作只能是输入源程序和调试修改。

    基础JavaScript面试问题及答案

    基础JavaScript面试问题及答案 1.使用typeof bar === "object"来确定bar是否是对象的潜在陷阱是什么?如何避免这个陷阱? 尽管typeof bar === "object"是检查bar是否对象的可靠方法,令人惊讶的是在JavaScript 中null也被认为是对象! 因此,令大多数开发人员惊讶的是,下面的代码将输出true (而不是false) 到控制台: var bar = null;console.log(typeof bar === "object"); // logs true! 只要清楚这一点,同时检查bar是否为null,就可以很容易地避免问题: console.log((bar !== null) && (typeof bar === "object")); // logs false 要答全问题,还有其他两件事情值得注意: 首先,上述解决方案将返回false,当bar是一个函数的时候。在大多数情况下,这是期望行为,但当你也想对函数返回true的话,你可以修改上面的解决方案为: console.log((bar !== null) && ((typeof bar === "object") || (typeof bar === "function")));

    第二,上述解决方案将返回true,当bar是一个数组(例如,当var bar = [];)的时候。在大多数情况下,这是期望行为,因为数组是真正的对象,但当你也想对数组返回false时,你可以修改上面的解决方案为: console.log((bar !== null) && (typeof bar === "object") && (toString.call(ba r) !== "[object Array]")); 或者,如果你使用jQuery的话: console.log((bar !== null) && (typeof bar === "object") && (! $.isArray(ba r))); 2.下面的代码将输出什么到控制台,为什么? (function(){ var a = b = 3; })(); console.log("a defined? " + (typeof a !== 'undefined'));console.log("b defin ed? " + (typeof b !== 'undefined')); 由于a和b都定义在函数的封闭范围内,并且都始于var关键字,大多数JavaScript开发人员期望typeof a和typeof b在上面的例子中都是undefined。

    相关文档
    相关文档 最新文档