JavaScript知识点
1.求y和z的值是多少?
<script type="text/javascript">
var x = 1;
var y = 0;
var z = 0;
function add(n){n=n+1;}
y = add(x);
function add(n){n=n+3;}
z = add(x);
</script>
都为undefined,因为没有返回值。
2.javascript是面向对象的,怎么体现javascript的继承关系?
使用prototype来实现。
3.javascript怎样选中一个checkbox,怎样设置它无效?
document.all.cb1[0].disabled = true;
4.form中的input可以设置为readonly和disable,请问2者有什么区别?
readonly不可编辑,但可以选择和复制;值可以传递到后台
disabled不能编辑,不能复制,不能选择;值不可以传递到后台
5.js中的3种弹出式消息提醒(警告窗口,确认窗口,信息输入窗口)的命令式什么?
alert
confirm
prompt
6.form中的input有哪些类型?
7.javaScript的2种变量范围有什么不同?
全局变量:当前页面内有效
局部变量:方法内有效
8.列举javaScript的3种主要数据类型,2种复合数据类型和2种特殊数据类型。
主要数据类型:string, boolean, number
复合数据类型:function, object
9.程序中捕获异常的方法?
window.error
try{}catch(){}finally{}
10.写出函数DateDemo的返回结果,系统时间假定为今天
function DateDemo(){
var d, s="今天日期是:";
d = new Date();
s += d.getMonth() + "/";
s += d.getDate() + "/";
s += d.getYear();
return s;
}
结果:今天日期是:7/17/2010
11.写出程序运行的结果?
for(i=0, j=0; i<10, j<6; i++, j++){
k = i + j;
}
结果:10(小心陷阱)
12.运行的结果?
function hi(){
var a;
alert(a);
}
结果:undefined
13.运行的结果?
function hi(){
var a = null;
alert(a);
}
结果:null
14.浏览器的对象模型?
window
顶级对象
window.alert(msg)
window.prompt()
window.confirm()
if(window.confirm()){
...
}
window.open()
window.close()
document
document.write()
history
当用户浏览网页时,浏览器保存了一个最近所访问网页的url列表。这个列表就是用history对象表示。
history.back():后退
history.forward():前进
history.go(n):正数表示向前,负数表示向后
location
表示当前打开的窗口或框架的URL信息。
location.href:重定向
等价于location.assign(url)
location.host:类似www.163.com:80
navigator
表示浏览器的信息及js运行的环境
navigator.cookieEnabled:该属性表示是否启用cookie
screen
用于显示网页的显示器的大小和颜色
screen.width/screen.height:表示显示器的分辨率(总的宽度,高度)
15.XMLHTTPRequest对象是什么?
Ajax原理
16.超链接的属性target的可选值:_blank, _parent, _self, _top和框架名称有什么区别?
17.javascript的常用对象有哪些?
String, Math, Date和Array对象
18.innerHTML、innerText和outerHTML、outerText的区别?
- innerHTML 设置或获取位于对象起始和结束标签内的 HTML
- outerHTML 设置或获取对象及其内容的 HTML 形式
- innerText 设置或获取位于对象起始和结束标签内的文本
- outerText 设置(包括标签)或获取(不包括标签)对象的文本
jQuery经典知识点
问题:jQuery的美元符号$有什么作用?
回答:其实美元符号$只是”jQuery”的别名,它是jQuery的选择器,如下代码:
$(document).ready(function(){ });
当然你也可以用jQuery来代替$,如下代码:
jQuery(document).ready(function(){ });
jQuery中就是通过这个美元符号来实现各种灵活的DOM元素选择的,例如$(“#main”)即选中id为main的元素。
问题:body中的onload()函数和jQuery中的document.ready()有什么区别?
回答:onload()和document.ready()的区别有以下两点:
1、我们可以在页面中使用多个document.ready(),但只能使用一次onload()。
2、document.ready()函数在页面DOM元素加载完以后就会被调用,而onload()函数则要在所有的关联资源(包括图像、音频)加载完毕后才会调用。
问题:jQuery中有哪几种类型的选择器?
回答:从我自己的角度来讲,可以有3种类型的选择器,如下:
1、基本选择器:直接根据id、css类名、元素名返回匹配的dom元素。
2、层次选择器:也叫做路径选择器,可以根据路径层次来选择相应的DOM元素。
3、过滤选择器:在前面的基础上过滤相关条件,得到匹配的dom元素。
问题:请使用jQuery将页面上的所有元素边框设置为2px宽的虚线?
回答:这正是jQuery选择器上场的时候了,代码如下:
<script language="javascript" type="text/javascript">
$("*").css("border", "2px dotted red");
</script>
问题:当CDN上的jQuery文件不可用时,该怎么办?
回答:为了节省带宽和脚本引用的稳定性,我们会使用CDN上的jQuery文件,例如google的jquery cdn服务。但是如果这些CDN上的jQuery服务不可用,我们还可以通过以下代码来切换到本地服务器的jQuery版本:
<script type="text/javascript" language="Javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.1.min.js "></script> <script type='text/javascript'>//<![CDATA[ if (typeof jQuery == 'undefined') { document.write(unescape("%3Cscript src='/Script/jquery-1.4.1.min.js' type='text/javascript' %3E%3C/script%3E")); }//]]> </script>
问题:如何使用jQuery实现点击按钮弹出一个对话框?
回答:代码如下:
HTML:
<input id="inputField" type="text" size="12"/>
jQuery:
<script type="text/javascript"> $(document).ready(function () { $('#Button1').click(function () { alert($('#inputField').attr("value")); }); }); </script>
问题:jQuery中的Delegate()函数有什么作用?
回答:delegate()会在以下两个情况下使用到:
1、如果你有一个父元素,需要给其下的子元素添加事件,这时你可以使用delegate()了,代码如下:
$("ul").delegate("li", "click", function(){ $(this).hide(); });
2、当元素在当前页面中不可用时,可以使用delegate()
问题:怎样用jQuery编码和解码URL?
回答:在jQuery中,我们可以使用以下方法实现URL的编码和解码。
encodeURIComponent(url) and decodeURIComponent(url)
问题:如何用jQuery禁用浏览器的前进后退按钮?
回答:实现代码如下:
<script type="text/javascript" language="javascript"> $(document).ready(function() { window.history.forward(1); //OR window.history.forward(-1); }); </script>