JavaScript__Window对象的练习题

一、单选题
1.关于Window对象计时器函数的描述,错误的是( )
A. setTimeout()用来注册在指定的时间之后单次调用的函数

B. setInterval()用来注册在指定的时间之后单次调用的函数
C. clearTimeout()用于取消计时器函数的执行

D. 计时的间隔以毫秒为单位

2.下列不属于Location对象的属性的是( )
A. protocol
B. searchpart
C. pathname
D. port

3.下面哪个选项不属于Location对象载入新文档的方法( )
A. assgin()
B. replace()
C. load()
D. reload()

4.下面哪个选项不属于History对象的方法( )
A. go()
B. forward()
C. next()
D. back()

5.下面哪个选项不属于Navigator对象的属性( )
A. appName
B. appVersion
C. userAgent()
D. pathname()

6.关于window对象的对话框方法,描述错误的是( )
A. alert()向用户显示一条消息并等待用户关闭对话框

B. confirm()显示一条消息,要求用户单击“确定”或“取消”按钮,并返回一个布尔值
C. message()向用户显示大段的信息文字

D. prompt()显示一条消息,等待用户输入字符串,并返回那个字符串

7.下面选项关于window.onerror参数的表述,错误的是( )
A. 描述错误的一条消息

B. 错误代码
C. 它存放引发错误的JavaScript代码所在的文档的URL

D. 文档中发生错误的行数

8.关于多窗口和窗体的表述,错误的是( )
A. Web浏览器窗口可能在桌面上包含多个标签页

B. 每一个标签页都是独立的“浏览上下文”(browsing context)
C. 每一个上下文都有独立的Window对象

D. 窗体相互之间不能传递变量

9.window的open方法,第二个参数是( )
A. 新打开的窗口的名字
B. 文档的URL
C. 是否替换掉窗口的当前条目
D. 打开窗口的参数的数组

10.有代码:<iframe id=”f1″ >,引用它的window对象的正确语法是( )
A. document.getElementById(“f1”).Window;

B. document.getElementById(“f1”).document;
C. document.getElementById(“f1”).contentWindow;

D. document.getElementById(“f1”).frame;

二、综合题
1.定时器应用函数
/*
*安排函数f()在未来的调用模式
*在等待了若干毫秒之后调用f()
*如果设置了interval并没有设置end参数,则对f()调用将不会停止
*如果没有设置interval和end,只在若干毫秒后调用f()一次
*只有指定了f(),才会从start=0的时刻开始
*注意,调用invoke()不会阻塞,它会立即返回
*/
function invoke(f, start, interval, end) {
if (!start) start = 0; // 默认设置为0毫秒
if (arguments.length <= 2) // 单次调用模式
setTimeout(f, start); // 若干毫秒后的单次调用模式
else { // 多次调用模式
setTimeout(repeat, start); // 在若干毫秒后调用repeat()
function repeat() { // 在上一行所示的setTimeout()中调用
var h = setInterval(f, interval); // 循环调用f()
// 在end毫秒后停止调用,前提是end已经定义了
if (end) setTimeout(function() { clearInterval(h); }, end);
}
}
}

2.一个通用函数urlArgs()的定义,可以用这个函数将参数从URL的search属性中提取出来
/*
*这个函数用来解析来自URL的查询串中的name=value参数对
*它将name=value对存储在一个对象的属性中,并返回该对象
*这样来使用它
*var args=urlArgs(); //从URL中解析参数
*var = args.q || “”; //如果参数定义了的话就使用参数。否则使用一个默认值
*var n = args.n?parseInt(args.n): 10;
*/
function urlArgs() {
var args = {}; // 定义一个空对象
var query = location.search.substring(1); // 查找到查询串,并去掉’?’
var pairs = query.split(“&”); // 根据”&”符号将查询字符串分隔开
for(var i = 0; i < pairs.length; i++) { // 对于每个片段
var pos = pairs[i].index Of(‘=’); // 查找”name=value”
if (pos == -1) continue; // 如果没有找到的话,就跳过
var name = pairs[i].substring(0,pos); // 提取name
var value = pairs[i].substring(pos+1); // 提取value
value = decode URIComponent(value); // 对value进行解码
args[name] = value; // 存储为属性
}
return args; // 返回解析后的参数
}

3.使用navigator.userAgent来进行浏览器嗅探
//为客户端嗅探定义browser.name和browser.version,这里使用jQuery 1.4.7中的代码
//name和number都是字符串,对于不同的浏览器输出的结果也是不一样的,检测结果如下:
//”webkit”:Safari或Chrome;版本号是Webkit的版本号
//”opera”:Opera版本号就是软件的版本号
//”mozilla”:Firefox或者其他基于gecko内核的浏览器;版本号是Gecko的版本
//”msie”:IE;版本号就是软件的版本
//比如Firefox 3.6返回:{name: “mozilla”, version: “1.9.2”}
var browser = (function() {
var s = navigator.userAgent.toLowerCase();
var match = /(webkit)[ \/]([\w.]+)/.exec(s) ||
/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(s) ||
/(msie) ([\w.]+)/.exec(s) ||
!/compatible/.test(s) && /(mozilla)(?:.*? rv:([\w.]+))?/.exec(s) ||
[];
return { name: match[1] || “”, version: match[2] || “0” };
}());
4.如何实现alert中的换行?
5.document.write和innerHTML的区别。
6.JavaScript中的三种弹出式消息提醒,分别为alert、confirm、prompt,请简要阐述。
7.下面的JavaScript代码段中,alert的结果是多少?
var a = 1;
functiuon f(){
alert(a);
var a = 2;
}
f();
8.结合<span id=”outer”><span id=”inner”>text</span></span>这段结构,谈谈innerHTML、outerHTML之间的区别。
9.单击一个按钮,如何刷新整个页面?



转载请注明:陈童的博客 » JavaScript__Window对象的练习题

喜欢 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

无觅相关文章插件,快速提升流量

'; } if( dopt('d_footcode_b') ) echo dopt('d_footcode'); ?>