JavaScript 基础阶段测笔试试题(含答案)_第1页
JavaScript 基础阶段测笔试试题(含答案)_第2页
JavaScript 基础阶段测笔试试题(含答案)_第3页
JavaScript 基础阶段测笔试试题(含答案)_第4页
JavaScript 基础阶段测笔试试题(含答案)_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JavaScript基础阶段测笔试试题(含答案)JavaScript基础阶段测笔试试题(含答案)一、选择题(每题2分,多选题错选、少选不得分)1.分析下段代码输出结果是()vararr=[2,3,4,5,6];varsum=0;for(vari=1;i<arr.length;i++){sum+=arr[i]}console.log(sum);A.20B.18C.14D.122.以下关于Array数组对象的说法不正确的是()A.对数组里数据的排序可以用sort函数,如果排序效果非预期,可以给sort函数加一个排序函数的参数B.reverse用于对数组数据的倒序排列C.向数组的最后位置加一个新元素,可以用push方法D.unshift方法用于向数组添加一个新元素到第一个位置3.以下代码运行的结果是输出()vara=b=10;(function(){vara=b=20})();console.log(b);A.10B.20C.报错D.undefined4.以下代码运行后的结果是输出()vara=[1,2,3];console.log(a.join());A.123B.1,2,3C.123D.[1,2,3]5.在JS中,’1555’+3的运行结果是()A.1558B.1552C.15553D.15536.以下代码运行后弹出的结果是()vara=888;++a;alert(a++);A.888B.889C.890D.8917.关于变量的命名规则,下列说法正确的是()A.首字符必须是大写或小写的字母,下划线(_)或美元符($)B.除首字母的字符可以是字母,数字,下划线或美元符C.变量名称不能是保留字D.长度是任意的E.区分大小写8.下列的哪一个表达式将返回值为假()A.!(3<=1)B.(4>=4)&&(5<=2)C.("a"=="a")&&("c"!="d")D.(2<3)||(3<2)9.下面代码,k的运行结果是()vari=0,j=0;for(;i<10,j<6;i++,j++){k=i+j;}A.16B.10C.6D.1210、删除明显有问题的段落:无明显问题。给定代码:varx=1;functionfn(n){n=n+1};y=fn(x);y的值为()A.2B.1C.3D.undefined改写为:给定代码:varx=1;functionfn(n){n=n+1};vary=fn(x);那么,y的值为()A.2B.1C.3D.undefined11、删除明显有问题的段落:无明显问题。给定代码:[1,2,3,4].join('0').split('')的执行结果是()A.'1,2,3,4'B.[1,2,3,4]C.[“1”,“”,“2”,“”,“3”,“”,“4”]D.'1,,2,,3,,4'改写为:给定代码:[1,2,3,4].join('0').split(''),那么执行结果是()A.'1,2,3,4'B.[1,2,3,4]C.[“1”,“”,“2”,“”,“3”,“”,“4”]D.'1,,2,,3,,4'12、删除明显有问题的段落:无明显问题。给定代码:functionfn1(){alert(1);}alert(fn1());运行结果是:第一次弹()第二次弹()A.1B.alert(1);C.functionfn1(){alert(1);}D.undefined改写为:给定代码:functionfn1(){alert(1);}varresult=fn1();alert(result);那么,第一次弹出1,第二次弹出undefined。13、删除明显有问题的段落:无明显问题。给定代码:fn1();varfn1=function(a){alert(a);}结果为()A.1B.程序报错C.alert(1);D.undefined改写为:给定代码:varfn1=function(a){alert(a);}fn1();那么,结果为undefined。14、删除明显有问题的段落:无明显问题。给定代码:varn="miaoweiketang".indexOf("wei",6);那么,n的值为:()A.-1B.5C.程序报错D.-10改写为:给定代码:varn="miaoweiketang".indexOf("wei",6);那么,n的值为5。15、删除明显有问题的段落:无明显问题。下面对substring()方法描述不正确的是()A.一共有两个参数,省略第二个参数表示从参数开始位置提、截取到字符串结束。B.提取之前会比较两个参数的大小,并根据大小调整位置。C.可以接收负数参数,负数表示从后往前数字符位置。D.如果没有设置参数,直接返回整个字符串。改写为:下面对substring()方法描述不正确的是()A.一共有两个参数,省略第二个参数表示从参数开始位置提取、截取到字符串结束。B.提取之前会比较两个参数的大小,并根据大小调整位置。C.可以接收负数参数,负数表示从后往前数字符位置。D.如果没有设置参数,直接返回空字符串。16、删除明显有问题的段落:无明显问题。alert("12">"9")的运行结果正确的是()A.trueB.false改写为:alert("12">"9")的运行结果正确的是()A.true。17、删除明显有问题的段落:C.setInterval(fn1,1000)只会调用一次fn1。这句话有误,应该是setInterval(fn1,1000)会每隔1000毫秒调用一次fn1。下面的描述中不正确的是()A.arguments中保存了实际传入函数内的所有参数。B.return只能在函数内部使用。C.setInterval(fn1,1000)会每隔1000毫秒调用一次fn1。D.Date对象的getMonth()获取到的值比实际月份小1。18、删除明显有问题的段落:C.isNaN('abc')==NaN这句话有误,应该是isNaN('abc')返回true。下面的等式成立的是()A.parseInt(12.5)==parseFloat(12.5)B.Number('')==parseFloat('')C.isNaN('abc')返回trueD.typeofNaN==='number'19、删除明显有问题的段落:无明显问题。下面的描述中不正确的是()A.'=='比较时会比较两边的值和数据类型。例如,1=='1'的结果是true,因为它们的值相等且都是数字类型。而NaN==NaN的结果是true,因为NaN是一个特殊的非数字值,只能通过isNaN()函数来判断。因此,两个NaN值相等。B.isNaN()函数用于判断传入的参数是否为数字。如果是数字,返回false,否则返回true。例如,isNaN(1)返回false,isNaN('hello')返回true。C.字符串的length属性只能获取字符串的长度,不能设置。例如,'hello'.length返回5。20.这段代码定义了一个函数fn1,它返回一个内部函数fn2。每次调用fn2时,a的值都会加1,并弹出a的值。因此,fn1()()的结果是1,newFn()的结果是2,newFn()的结果是3。21.这段代码定义了一个全局变量a和一个函数fn1。在fn1中,先定义了一个局部变量a并赋值为10,然后弹出a的值。由于在弹出a的时候,局部变量a还没有被赋值,因此它的值为undefined。因此,整个代码的结果是undefined。22.这段代码定义了一个数组arr,然后通过arr.concat()方法创建了一个新数组arr2。接着,将arr中下标为1的元素删除,并将删除的元素插入到arr2的末尾。因此,arr的结果为[1,2],arr2的结果为[1,2,2]。23.数组的length属性只能获取,不能修改。调用pop()方法会删除原数组的最后一个元素,并返回该元素的值。shift()方法会删除原数组的第一个元素,并返回该元素的值。concat()方法会创建一个新数组,并将原数组和参数数组的元素合并到新数组中,不会修改原数组的值。24.这段代码定义了一个全局变量a和一个函数test。在test中,先将全局变量a的值修改为100,然后弹出a的值(100),this.a的值(undefined),以及局部变量a的值(undefined)。由于函数test没有被绑定到任何对象上,因此this指向全局对象,即window对象。25.这段代码先创建了一个长度为5的数组arr,然后将下标为1和5的元素分别赋值为1和2。由于数组的下标是从0开始的,因此实际上只有两个元素被赋值了。因此,arr的长度为5,但实际上只有两个元素。因此,输出的结果是5。26.正确的语句是D.vardate=newDate();varhour=date.getHours();在JavaScript中,可以使用Date对象来获取系统当前时间。其中,getHours()方法可以获取当前时间的小时值。27.结果为真的选项是A.null==undefined。null和undefined在比较时会被认为是相等的,但是使用全等运算符(===)时会被认为是不相等的。28.Math.ceil(-3.14)的结果是C.-4,Math.floor(-3.14)的结果是A.-3。Math.ceil()方法可以将一个数向上取整,Math.floor()方法可以将一个数向下取整。29.结果是B.b。s.substring(1,2)的作用是获取字符串s中从索引1开始到索引2(不包括2)之间的子串,即b。30.正确的ECMAScript变量命名格式是A._125dollor。ECMAScript中的变量名可以包含字母、数字、下划线和美元符号,但是不能以数字开头。二、问答题答案:1.方法一:vararr=[-1,-2,1,10,4,5,8];varmax=Math.max.apply(null,arr);console.log(max);//输出10方法二:vararr=[-1,-2,1,10,4,5,8];varmax=arr[0];for(vari=1;i<arr.length;i++){if(arr[i]>max){max=arr[i];}}console.log(max);//输出102.封装的函数如下:functioncapitalize(str){varwords=str.split("-");for(vari=1;i<words.length;i++){words[i]=words[i].charAt(0).toUpperCase()+words[i].slice(1);}returnwords.join("");}varstr="miao-wei-ke-tang";varresult=capitalize(str);console.log(result);//输出miaoWeiKeTang3.封装的函数如下:functiontrim(str){varstart=0;varend=str.length-1;while(str.charAt(start)===""){start++;}while(str.charAt(end)===""){end--;}returnstr.substring(start,end+1);}varstr="miaov";varresult=trim(str);console.log(result);//输出"miaov"4.找出字符串"abcabcabcabcabcabda"中"ab"出现的次数和位置的代码如下:varstr="abcabcabcabcabcabda";varcount=0;varindex=str.indexOf("ab");while(index!==-1){count++;console.log("第"+count+"次出现的位置:"+index);index=str.indexOf("ab",index+1);}console.log("总共出现了"+count+"次");5.生成100个div并排列的代码如下:varcolors=["red","yellow","blue","green"];varcontainer=document.body;for(vari=1;i<=100;i++){vardiv=document.createElement("div");div.style.width="100px";div.style.height="100px";div.style.backgroundColor=colors[(i-1)%4];div.style.color="white";div.style.textAlign="center";div.style.lineHeight="100px";div.innerHTML=i;container.appendChild(div);}其中,colors数组存储了四种颜色,使用循环生成100个div,并设置宽高、背景颜色、文字颜色、对齐方式、行高和内容,最后将div添加到body中。varlen=str.length;for(start=0;start<len;start++){if(str.charAt(start)!==''){break;}}for(en

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论