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试题 一、单选题 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,网页可以嵌入其他网页内容,并可以动态更改1. 如何显示/隐藏一个DOM元素? 更改元素的css style,设为display: none。此外还可以将visibility设为hidden,透明度设为0,或长、宽设为0。 2. 一个定宽网页在浏览器(IE6,IE7,Firefox,IE5)中横向居中对齐的布局, 请写出主要的HTML标签及CSS。 1. 2. 3.
4. 5.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的后面
实验项目:浏览器脚本语言及其应用 实验类型:设计 实验课时:4 实验目的:研究javascript及其应用 实验方案: 1 研究将JavaScript引入HTML页面 创建一个HTML文件,容如下。在浏览器中打开该文件。分析代码。
3 研究JavaScript名称 创建一个HTML文件,容如下。在浏览器中打开该文件。分析代码。 3 研究JavaScript值 创建一个HTML文件,容如下。在浏览器中打开该文件。分析代码。