JavaScript和jQuery常见⾯试题
前⾔
javascript和jQuery在前端开发中发挥着巨⼤的作⽤,在⾯试的过程中这也是不可缺少的话题吧!故搜集了⼀些⾯试会遇到的问题,与⼤家共享!
JavaScript部分
下⾯代码什么会被打印在控制台上?
(function(){
var a = b = 5;
})();
jquery在一个元素后追加标签console.log(b);
上⾯的代码会打印出5,拆解函数变量赋值过程如下:
b = 5;
var a =b;
所以b成了全局变量,⽽a是函数的⼀个局部变量。
执⾏这段代码,输出什么结果?
function test() {
console.log(a);
console.log(foo());
var a = 1;
function foo(){
return 2;
}
}
test();
代码的结果是:undefined和2;执⾏过程如下:
function test(){
var a;
function foo(){
return 2;
}
console.log(a);
console.log(foo());
a = 1;
}
test();
变量a声明但是没有进⾏赋值,所以是undefined;调⽤函数返回结果2。
javascript是⾯向对象的,怎么体现JavaScript的继承关系?
使⽤prototype实现。
JS中的3种弹出式消息提醒的命令是什么?
alert—警告窗⼝
confirm—确认窗⼝
prompt—信息输⼊窗⼝
innerHTML,innerText,outerHTML,outerText的区别:
innerHTML与outerHTML在设置对象的内容时包含的HTML会被解析,⽽innerText与outerText则不会;
在设置时,innerHTML与innerText仅设置标签内的⽂本,⽽outerHTML与outerText设置包括标签在内的⽂本。
什么是NaN?
NaN是Not a Number的缩写,JavaScript的⼀种特殊数值,其类型是Number,可以通过isNaN(param)来判断⼀个值是否是NaN:
console.log(isNaN(NaN)); //true
console.log(isNaN(23)); //false
console.log(NaN === NaN); //false
console.log(NaN === undefined); //false
console.log(undefined === undefined); //true
console.log(NaN == NaN); //false
console.log(typeof NaN); //number
jQuery部分
jQuery的美元符号$有什么作⽤
美元符号$是“jQuery”的别名,它是jQuery的选择器,如下:
$(document).ready(function(){ //其中可以⽤jQuery代替$
});
在jQuery中,可以通过这个美元符号实现各种灵活的DOM元素选择,例如$("#main")既“选中id为main的元素”。
body中的onload()函数和jQuery中的ady()有什么区别?
ady()函数在页⾯DOM元素加载完以后就会被调⽤,⽽onload()函数则要在所有的关联资源(包括图像、⾳频)加载完毕之后才会被调⽤。
我们可以在页⾯中使⽤多个ady(),但只能使⽤⼀次onload()。
使⽤jQuery将页⾯上的所有元素边框设置为2px宽的红⾊的虚线
<script language="javascript" type="text/javascript">
$("*").css("border","2px dotted red");
</script>
jQuery中$.get()提交和$.post()提交有区别吗?
$.get()⽅法使⽤get⽅法来进⾏异步请求的,$.post()⽅法使⽤post⽅法来进⾏异步请求的;
get请求会将参数跟在URL后进⾏传递,⽽post请求则是作为HTTP消息的实体内容发送给Web服务器的;
get⽅式传输的数据⼤⼩不能超过2KB,⽽post要⼤得多;
get⽅式的请求的数据会被浏览器缓存起来,因此有安全问题。
jQuery中如何去操作样式?
addClass()追加样式;
removeClass()删除样式;
toggleClass()切换样式。
总结
这只是⼀部分内容,详细的⼤家可以学习⼀下“W3School”⾥⾯的内容,在掌握好理论的基础上去实践。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论