js基础第一次测试题(附答案)doc资料
js第一天课后考试答案

js第一天课后考试答案JS第一天答案Name:_________ Array_________ Score_________选择题每题2分,共计20分;填空题每题2分,共计40分;问答题每题4分,共计40分; 选择题和代码题主要考查的基本知识点的理解,而简答题主要考查表达能力.一、选择题(每题2分)1.下面js代码书写正确的是选项A:var 123=”123”; B:var 123abc=123;C:var int=456 D:var number=123答案 D答案说明定义变量不能使用数字或者以数字开头,不能使用关键字或者保留字定义2.有关js的特点下列说法错误的是选项A: js 是一门编程语言B:js是一门服务器端的语言C: js 运行在浏览器端D:js是一门解释型的语言答案 B答案说明Js是一门运行在客户端的脚本语言,不是服务器端的语言3.有关ECMAScript 说法正确的是选项A:它是js 的执行标准B: 它是一门独立的语言C: 它是js执行的引擎D:以上说法都不正确答案 A答案说明ES属于js的标准4. Var a=’123’;下面对该段代码描述正确的是选项A:变量a的数据类型是Number B:变量a的值是123C: 变量a的数据类型是string D:以上都正确答案B,C答案说明变量通过”=”进行赋值,双引号和单引号包含起来的变量的数据类型都是字符串类型5.下面哪一个语句定义了一个名为Myval的变量并将它的值赋为2205?选项A.var myval=2205 B.var MyVal=2205C.var Myval=2205 D.Myval=2205答案 C答案说明Js中区分字符大小写6.Var a=123; var b=”123”; 关于这段代码描述正确的是选项A: 变量a 和变量b完全相等B: 变量a 和变量b内容相同C: alert(a==b); 结果为true D:以上都不正确答案B,C答案说明变量a和变量b的内容相同,但数据类型不同7.Var a=null; a的数据类型是选项A: nudefined B numberC:NaN D: object答案 D答案说明变量的值为null的时候,该变量的数据类型是object类型8.Var a; alert(a); 该段代码执行真确的是选项 A null B undefinedC 报错D 以上都不对答案 B答案说明变量未初始化的值为undefined9.Var a=7;var b=a/0; 关于这段代码描述正确的是选项 A 报错 B b的值为NaNC b的值为infinityD b的值为0答案 C答案说明Js 中数字0作为除数,最后的结果是无穷大infinity10.Var a=123; var b=”123”; alert(a+b); 结果正确的是选项 A 246 B 123123C NaND 以上都不对答案 B答案说明数字类型和字符串类型相加,最后的结果为字符串类型二、填空题(每题2分)1.Js最早在_______年,被___________互联网公司提出的。
js基础测试题

js基础测试题智能社javascript基础题测试姓名:________⽬前学过的获取元素的⽅式有哪些?并说出是通过什么获取的?获取出来⼏个?Answer:Document.getElementById();获取⼀个;Document.getELementsByTagName()//获取多个;Document.getELementsByClassName();//获取多个;简单写出⼀个div层垂直⽔平居中的代码?Answer:<div id=”box”></div><style>#box{ width: 100px;height: 100px; background: red; position: absolute; left: 50%; top: 50%; margin: -50px 0 0 -50px; } </style>Js⾥⾯操作属性的⽅式有哪些?分别有什么特点?Answer:.不可以操作变量;[]可以操作变量;Js⾥⾯如何定义⼀个变量?并说出变量与字符串的区别?Answer:定义变量使⽤ var,变量后⾯如果加引号的话就是字符串;Js中常见的变量的类型有哪些?Answer:Boolean/function/number/undefined/string/object/写出以下代码的运⾏结果?alert(typeof null) -> objectalert(typeof undefined) -> undefinedalert(typeof NaN) -> numberalert(null==undefined) -> truealert(NaN==NaN) -> falsevar str=’123abc’;alert(typeof str++); ->number 直接alert( str++ )的话是NaN,NaN的数据类型就是numberalert(str) ->NaN字符串如何转化成数字?并写出⼏种转化的区别Answer:parseInt,parseFloat,number写⼀个获取⾮⾏间样式的函数?Answer:Function getStyle( obj,name ){If( obj.currentStyle ){Return obj.currentStyle[name];}else{Return getComputedStyle( obj,false )[ name ];}}封装⼀个n,m的⼀个随机数函数?Answer:Function rnd( n,m ){Return parseInt( Math.random( )*( m-n )+n );}什么是真?什么是假?Answer:True: ⾮0的数字,⾮空对象,⾮空字符串,trueFalse: 空字符串,空对象,false,undefined,NaN,0封装⼀个函数,要求函数返回的结果是:今天的⽇期?eg: 10/30/2013Answer:Fucntion getToday(){Var oDate = new Date();Var y = oDate.getFullYear();Var m = oDate.getMonth();Var d = oDate.getDate();Return m + ‘/’ + d + ‘/’ + y;}以下代码的结果是多少?alert(‘showing’);return function(){alert(‘test’);}}alert(show()());Answer:Showing/test/undefined;以下代码的运⾏结果是多少?function show(a){alert(a);var s=a();return function(){alert(s);}}function a(){alert(‘a’)}alert(show(a)());Answer:Function a(){ alert(‘a’); }/a/undefined/undefined/把时间调到今年的元旦,写出实现代码?Var oDate = new Date();oDate.setFullYear( 2016,11,1 );封装⼀个求和的函数?⽤法如下:Answer:Function sum(){Var res = 0;For(var i = 0;i < arguments.length; i++){Res+=arguments[i];}Return res;}eg: sum(1,2,3,4,5)截取扩展名的代码实现?var str= ‘ abcde.html ’;Var n = stIndexOf( ‘.’ );Alert( str.substring(n+1) );字符串转数组,以及数组转字符串如何实现?Answer:字符串转数组⽤str.split();数组转字符串⽤: arr.join();如何实现⼀个字符串翻转?eg:‘Welcome to ZhiNengshe!’->‘ZhinengShe to Welcome’Answer:Var newStr = str.substring(0,arr.length-1);Alert(newStr.split(‘ ’).reverse().join(‘ ’));如何判断⼀个浏览器是不是IE6?Answer:If( erAgent.indexOf(‘MSIE 6.0’) != -1 ){Alert(‘ ie6 ’);}假设页⾯上有3个按钮,然后看以下代码点击按钮结果是多少?为了弹出正常结果,如何解决?(⾄少两种办法) for(var i=0; i<aBtn.length; i++){aBtn[i].onclick=function(){alert(i);}}Answer:3;For( var i = 0; i < aBtn.length; i++ ){aBtn[i].index = i;aBtn[i].onclick = function(){Alert( this.index );}}For(var i = 0 ;i < aBtn.length; i++){aBtn[i].onclick = function(){Alert( index );}} )(i);}如何清空⼀个数组?(⾄少两种办法)Answer:While( ar.length ){Arr.pop();}Arr.length = 0;获取本⽉的第⼀天是周⼏?本⽉有多少天?请写出代码实现?Answer:本⽉第⼀天是周⼏:Var oDate = new Date();oDate.setDate(1);Alert( oDate.getDay() );本⽉共有多少天:Var oDate = new Date();oDate.setMonth( oDate.getMonth()+1 );oDate.setDate( 0 );Alert( oDate.getDate() );写出字符串常⽤的⽅法?以及数组的常⽤⽅法?(每个⾄少5个) Answer:字符串常⽤的⽅法:Str.split()//切割Str.substring()//截取Str.charAt()//字符串下标Str.indexOf(‘’);//⼩字符串在⼤字符串中的位置;stIndexOf()//从右往左查找⼩字符串在⼤字符串中的位置;数组⽅法:Arr.join(‘’)//数组转字符串Arr.splice()//数组万能操作Arr.reverse()//数组翻转Arr.concat();//数组连接Arr.push()//⽹数组后⾯添加Arr.unshift();//往数组前⾯添加Arr.pop()//数组后⾯删除Arr.shift()//数组前⾯删除⾃⼰写⼀个排序算法?要求从⼤到⼩排列?Answer:Function findMinIndex( arr,start ){Var iMin = arr[ start ];Var iMinIndex = start;For( var i = start; i < arr.length; i++ ){If( iMin<arr[i] ){iMin = arr[i];iMinIndex = i;}}Return iMinIndex;}For( var i = 0;i < arr.length; i++ ){Var n = findInMin(arr,start);Var tmp;Tmp = arr[n];Arr[n] = arr[i];Arr[i] = tmp;}定时器有⼏种?有什么区别?并列出常见例⼦!Answer:setInterval()//⼀直执⾏,关闭⽤clearInterval()setTimeout()//仅执⾏⼀次;关闭定时器⽤clearTimeout();以下break和continue运⾏的结果分别是多少?var num=0;For(var i=0; i<10; i++){if(i%4==0){break;/continue}Num++;}alert(num);、Answer:Break: 0;Continue: 7以下代码运⾏的结果是多少?var count=12;function toDo(a,b){function toDo2(){alert(count+a+b);return count+a;}return toDo2();}alert(toDo(5,8));Answer:25,17;Var a=5;setTimeout(function(){alert(a);a=666;},1000);a=66;Answer: 66;截取字符串zhinengshe的she?Answer: Alert( substring( 7 ) );实现 welcome to zhinengshe 字符串⾸字母⼤写?Answer: var str = 'welcome to china';var arr = str.split(' ');var arr1 = [];for(var i = 0; i < arr.length; i++){var littleStr = arr[i].charAt(0).toUpperCase()+arr[i].substring(1);arr1.push(littleStr);}alert( arr1.join(' ') );页⾯输出⼀个九九乘法表?Answer:<style>th{border: #ccc 1px solid;font-weight: normal;}</style>document.write('<table>');for(var i = 0; i <= 9; i++){document.write('<tr>');for(var j = 1; j <= i; j++){document.write('<th>' + j + '*' + i + '=' + ( j * i )+ '</th>');}document.write('</tr>');}document.write('</table>');在’abcdaaaaaaaa’ 字符串中,找出出现次数最多的字符,统计下出现的次数编写⼀个⽅法,实现数组去重?Answer:Var arr = [,1,2,2,34,4,5,5,6,2,4,5,6];Arr.sort();For( var i = 0 ; i < arr.length; i++ ){If( arr[i] == arr[i+1] ){Ar.splice(i,1);I--;}}Alert( arr );要求实现 ‘a=1&b=2&c=3’ -> {a:1, b:2, c:3} 代码实现?判断函数的参数是否都是数字,如果都是数字返回true,如果有⼀个不是数字就返回falseeg: testNumber(1,2,3,4); ->true testNumber(1,’a’,2,3,4); -> false说出以下程序的结果,并给出正确的写法?for(var i=0; i<2; i++){setTimeout(function(){alert(i);},300);}Answer:2,正确写法为:for(var i=0; i<2; i++){setTimeout((function(index){alert(index);})(i),300);}写出常⽤的Math⽅法,⾄少7个?少于7个不得分Answer:Math.abs()Math.random();Math.sqrt();Math.pow();Math.min();Math.max();Math.round();封装⼀个函数,删除数组中的奇数?Answer:function removeOdd(arr){for(var i = 0; i < arr.length; i++){if( arr[i]%2 == 1 ){arr.splice(i,1);i--;}}return arr;}alert(removeOdd([1,2,3,4,5,6,7,8,9]));eg: removeOdd(arr);简述⼀下eval的作⽤,别写出如何eval⼀个json形式的字符串?Answer:var str = '{a:1,b:2,c:3}';eval('(' + str + ')');在select⾥⾯,如何获取当前选中那项的⽂本值?如何把第2个option给删了?如何很好的添加⼀个?Answer:Var aO = oS.options;Alert( aO.selectedIndex );//获取当前选中的那项的索引;oS.options.remove(1);//删除Var option = new Option( ‘河北’,’hb’ );//创建⼀个新的optionoS.options.add( option );//把新的option添加到select⾥⾯;视线如下语法的功能:var a = add(2)(3)(4)//9;视线如下语法的功能:var a = fn(5).plus(3).minus(6)//2。
js基础考试题和答案

js基础考试题和答案**JS基础考试题和答案**一、单项选择题(每题2分,共20分)1. JavaScript是一种()。
A. 服务器端语言B. 客户端语言C. 桌面程序语言D. 操作系统答案:B2. 在JavaScript中,以下哪个是合法的标识符?()A. 2variableB. variable2C. $variableD. variable-2答案:B3. 下列哪个不是JavaScript的数据类型?()A. NumberB. StringC. BooleanD. Tuple答案:D4. 在JavaScript中,以下哪个是正确的注释方式?()A. // 这是一个注释B. /* 这是一个注释 */C. <!-- 这是一个注释 -->D. 以上都是答案:D5. JavaScript中,以下哪个是全局对象?()A. windowB. documentC. navigatorD. 以上都是答案:D6. 在JavaScript中,以下哪个方法用于获取元素的属性值?()A. getAttribute()B. setAttribute()C. removeAttribute()D. hasAttribute()答案:A7. 在JavaScript中,以下哪个方法用于创建一个新的数组?()A. new Array()B. new array()C. []D. 以上都是答案:D8. 在JavaScript中,以下哪个方法用于将字符串转换为小写?()A. toUpperCase()B. toLowerCase()C. toLocaleUpperCase()D. toLocaleLowerCase()答案:B9. 在JavaScript中,以下哪个方法用于将字符串分割成数组?()A. split()C. slice()D. substring()答案:A10. 在JavaScript中,以下哪个方法用于检查对象是否包含特定的属性?()A. hasOwnProperty()B. isPrototypeOf()C. propertyIsEnumerable()D. 以上都是答案:A二、多项选择题(每题3分,共15分)1. 在JavaScript中,以下哪些是基本数据类型?()A. NumberC. BooleanD. Object答案:ABC2. 在JavaScript中,以下哪些是控制结构?()A. if...elseB. forC. whileD. switch答案:ABCD3. 在JavaScript中,以下哪些是全局函数?()A. parseInt()B. parseFloat()C. isNaN()答案:ABCD4. 在JavaScript中,以下哪些是事件类型?()A. clickB. loadC. changeD. submit答案:ABCD5. 在JavaScript中,以下哪些是DOM操作?()A. getElementById()B. getElementsByTagName()C. createElement()D. appendChild()答案:ABCD三、判断题(每题1分,共10分)1. JavaScript是大小写敏感的。
js程序设计基础习题答案

js程序设计基础习题答案JavaScript(简称JS)是一种广泛应用于网页开发的编程语言。
它具有简单易学、灵活性强等特点,因此备受开发者青睐。
在学习JS的过程中,习题是必不可少的一环。
下面将为大家提供一些JS程序设计基础习题的参考答案,希望能对大家的学习有所帮助。
习题一:编写一个JS函数,实现将一个字符串中的所有字母转换为大写字母。
答案:```javascriptfunction convertToUpper(str) {return str.toUpperCase();}```习题二:编写一个JS函数,计算一个数组中所有元素的和。
答案:```javascriptfunction sumArray(arr) {let sum = 0;for (let i = 0; i < arr.length; i++) {sum += arr[i];}return sum;}习题三:编写一个JS函数,判断一个数是否为素数。
答案:```javascriptfunction isPrime(num) {if (num <= 1) {return false;}for (let i = 2; i <= Math.sqrt(num); i++) {if (num % i === 0) {return false;}}return true;}```习题四:编写一个JS函数,将一个字符串中的单词进行反转。
答案:```javascriptfunction reverseWords(str) {return str.split(" ").reverse().join(" ");}习题五:编写一个JS函数,统计一个字符串中每个字符出现的次数,并返回一个对象。
答案:```javascriptfunction countCharacters(str) {let count = {};for (let i = 0; i < str.length; i++) {let char = str[i];if (count[char]) {count[char]++;} else {count[char] = 1;}}return count;}```习题六:编写一个JS函数,判断一个字符串是否为回文字符串。
js基础第一次测试题(附答案)教学文案

JavaScript学期第一次测试题本试题满分100分,100分钟完卷一、选择题(每题2分,多选题错选、少选不得分)1、分析下段代码输出结果是(B)var arr = [2,3,4,5,6];var sum =0;for(var i=1;i < arr.length;i++) {sum +=arr[i] }console.log(sum);A.20 B.18 C.14 D.122、以下关于Function函数对象的说法不正确的是(D )A.函数可有可无返回值B.调用函数时传递的参数是实参C.函数调用时候,可以用一个变量来接收函数返回值D.函数必须要有形式参数3、以下代码运行的结果是输出(B )var a = b = 10;(function(){var a=b=20})();console.log(b);A.10 B.20 C.报错D.undefined4、以下代码运行后的结果是输出( A )var a=new Object();=”admin”console.log();A.admin B.a C.“admin”D.[a] 5、在JS 中,’1555’+3 的运行结果是( C ) A.1558 B.1552 C.15553 D.15536、以下代码运行后弹出的结果是( B )var a = 888;++a;alert(a++);A.888 B.889 C.890 D.8917、关于变量的命名规则,下列说法正确的是(ABCDE )A.首字符必须是大写或小写的字母,下划线(_)或美元符($)B.除首字母的字符可以是字母,数字,下划线或美元符C.变量名称不能是保留字D.长度是任意的E.区分大小写8、下列的哪一个表达式将返回值为假(B )A.!(3<=1)B.(4>=4)&&(5<=2)C.(“a”==“a”)&&(“c”!=“d”)D.(2<3)||(3<2)9、下面代码,k的运行结果是( B )var i = 0,j = 0;for(;i<10,j<6;i++,j++){k = i + j;}A.16 B.10 C.6 D.1210、var x = 1; function fn(n){n = n+1}; y = fn(x); y 的值为(D )A.2 B.1 C.3 D.undefined11、[1,2,3,4].join("0").split("") 的执行结果是(C )A."1,2,3,4"B.[1,2,3,4]C.[“1”,“0”,“2”,“0”,“3”,“0”,“4”]D."1,0,2,0,3,0,4"12、下面代码的运行结果是:第一次弹( A )第二次弹(D )function fn1() {alert(1);}alert( fn1() );A.1B.alert(1);C.function fn1() { alert(1); }D.undefined13,以下代码运行后,结果为(B )fn1();var fn1 = function(a){ alert(a); }A.1 B.程序报错C.alert(1); D.undefined14,var n = "miao wei ke tang".indexOf("wei",6);n的值为:(A )A.-1 B.5 C.程序报错D.-1015,下面对substring() 方法描述不正确的是( C )A.一共有两个参数,省略第二个参数表示从参数开始位置提、截取到字符串结束。
Javascript考试题库1

Javascript考试题库1复习题一、选择题1、写“Hello World”的正确javascript语法是?(A)A. document.write("Hello World")B. "Hello World"C. response.write("Hello World")D. ("Hello World")2、JS特性不包括( D )A.解释性B.用于客户端C.基于对象D.面向对象3、下列JS的判断语句中( )是正确的(A)A.if(i==0)B.if(i=0)C.if i==0 thenD.ifi=0 then4、下列JavaScript的循环语句中( )是正确的( D )A.if(i<10;i++)B.for(i=0;i<10)alert(“a1+a2=”+a1+a2)将显示( )结果A.a1+a2=30B.a1+a2=1020C.a1+a2=a1+a29、将字串s中的所有字母变为小写字母的方法是( B)A.s.toSmallCase()B.s.toLowerCase()C.s.toUpperCase()D.s.toUpperChars()10、以下( )表达式产生一个0~7之间(含0,7)的随机整数. ( C )A.Math.floor(Math.random()*6)B.Math.floor(Math.random()*7)C.Math. floor(Math.random()*8)D.Math.ceil(Math.random()*8)11、产生当前日期的方法是( C )A.Now();B.Date()C.new Date()D.new Now()12、如果想在网页显示后,动态地改变网页的标题( C )A.是不可能的B.通过document.write(“新的标题内容”)C. 通过document.title=(“新的标题内容”)D. 通过document.changeTitle(“新的标题内容”)13、某网页中有一个窗体对象,其名称是mainForm,该窗体对象的第一个元素是按钮,其名称是myButton,表述该按钮对象的方法是( B )A.document.forms.myButtonB.document.mainForm.myButtonC.document.forms[0].element[0]D.以上都可以14、HTML文档的树状结构中,()标签为文档的根节点,位于结构中的最顶层。
js基础试题及答案(一)

js基础试题及答案(⼀)⼀、单选题(共30题,每题2分)1.如下代码,会弹出来是什么 var num1=“1” ;var num2=1 alert(num1-num2);A 0B 11C 1+1D 报错正确答案: A解析:相减,进⾏隐⼠转换,全部为数字2.如下代码,会弹出来是什么 var num1=“hi” var num2=1 alert(num1+num2);A hi1B 1C hiD 报错正确答案: A解析:字符串拼接3.在JS中,“1555”+3的运⾏结果是A 1558B 1552C 15553D 1553正确答案: C解析:155534.parseInt(“20.2aa”) 返回值为A 20B 20.2C 20.2aaDNaN正确答案: A解析:205.分析输出结果是function sum(a){ a = a + 2; }var res = sum(2);console.log(res);A 2B 4C NaND undefined正确答案: D解析:undefined6.var a = false;var x = a? “A” : “B”;最终x的值为A AB BC trueD false正确答案: B解析:B7.下列变量名合法的是A 5showB returnC $userD var正确答案: C解析:变量名不能以数字开头,A错;BD是关键字,C正确8.需要在 html 页⾯上引⽤脚本⽂件myJs.js,下列语句中,正确的是A <script href="myJs.js" type="text/javascript" />B <script src="myJs.js" type="text/javascript" />C <script href="myJs.js" type="text/javascript"></script>D <script src="myJs.js" type="text/javascript"></script>正确答案: D解析:script 是双标签,src引⼊⽂件9.代码的输出结果是var a = 3;var b = 2;var c = (a+2)/b;document.write ©;A 2.0B 2.5C 16.0D (3+2)/2正确答案: B解析:js弱类型,(2+3)/2=2.510.代码的输出结果是function add(){undefinedvar sum = 1 + 2 ;console.log( sum ) ;}console.log(sum) ;A 输出两个3B 输出⼀个3C 程序报错D 输出⼀个undefined正确答案: C解析:sum是局部变量,全局环境未定义11.typeof null 检测出来的数据类型是A nullB numberC objectD undefined正确答案: C解析:null是空对象12.parseInt(“12a”)的结果是A NaNB 12aC 0D 12正确答案: D解析:因为parseInt()的转换规则:跳过开头结尾的空字符,从左到右依次执⾏转换,碰到第⼀个不认识的数字则停⽌,所以答案为D13.下列的哪⼀个表达式将返回假A !(3<=1)B (4>=4)&&(5<=2)C 2<3D (2<3)||(3<2)正确答案: B解析:&& 左右有⼀侧为假 ;整个表达式就为假14.关于循环下列说法正确的是A while循环⾄少会运⾏⼀次B do…while循环⾄少会运⾏⼀次C for循环⾄少会运⾏⼀次D switch循环⾄少会运⾏⼀次正确答案: B解析:do…while 是先执⾏后判断,不管条件成不成⽴,都会⾄少执⾏⼀次15.for(var i = 0; i < 10; i++){ i++; }console.log(i)的值是?A 10B 9C undefinedD 7正确答案: A解析:i++ 最终为10; 不⼩于10;结束for循环;此时i为1016.下⾯代码的执⾏结果为var a = 20;function foo(){undefinedconsole.log(a) ;var a = 10 ;console.log(a) ;}foo();A 20 10B 10 10C 20 20D undefined 10正确答案: D解析:函数中的a会变量提升;所以第⼀个a是undefined;a 赋值了10;所以a 是10;D选项是正确的17.有下述JS代码:var x = 10; var y = 20;var z = x<y ? x++ : ++y ;console.log( ‘x=’ + x + ‘; y=’ + y + ‘; z=’ + z);其运⾏结果是A x=11; y=21; z=11B x=11; y=20; z=10C x=11; y=21; z=10D x=11; y=20; z=11正确答案: B解析:x=11; y=20; z=1018.查看如下代码:function f1( ){undefinedconsole.log(x);var x = 10;123++x;console.log(x);}f1();执⾏后的结果是A 程序错误B undefined 和 10C undefined 和 11D 10 和 11正确答案: C解析:undefined 和 1119.引⽤名为"xxx.js"的外部脚本的正确语法是ABCD正确答案: C解析:JS脚本引⼊⽤src属性20.如下代码,会弹出来是什么 var a; alert(a);A 报错B a is not defineC undefinedD 0正确答案: C解析:变量提升21.如下代码,会弹出来是什么 alert(a);var a=12;A 报错B a is not defineC undefinedD 12正确答案: C解析:变量提升22.的组成不包括A ECMAScriptB DOMC BOMD document正确答案: D解析:23.console.log( typeof 123 === “number”)A 报错B trueC falseD 123正确答案: B解析:得到字符串的"number", 所以类型和值都相等为全等24.代码的输出结果是function fnMax(a,b,c){undefinedvar a,b,c;var max = a > b ? a : b;if(c > max){ max = c; }alert(max);1234567}fnMax(8,2,5);A 5B 2C 8D 10正确答案: C解析:8,2,5中的最⼤值为825.以下哪项不属于javascript的特征A Javascript是⼀种脚本语⾔B Javascript是事件驱动的C Javascript代码需要⼿动编译以后才能执⾏D Javascript是独⽴于平台的正确答案: C解析:JavaScript是基于事件驱动并独⽴于平台的脚本语⾔26.如下代码,会弹出来是什么 var num1=“1” ;var num2=1 alert(num1-num2);A 0B 11C 1+1D 报错正确答案: A解析:相减,进⾏隐⼠转换,全部为数字27.console.log(typeof typeof 123456),在控制台中打印什么内容A 123456B numberC stringD object正确答案: C解析:第⼀个 typeof 123456 返回 “number”然后typeof “number” 返回"string"28.console.log( (2==true)+1 )会弹出A trueB falseC 1D 2正确答案: C解析:29.如下代码,会弹出来是什么 var num1=“1”; var num2=1 alert(num1+num2)A 2B 11C 1+1D 报错正确答案: B解析:隐⼠转换30.下列表达式结果为false的是A !""B !{}C !undefinedD !!5正确答案: B解析:使⽤if去判断⼀个空对象结果仍然是true⼆、多选题(不定项选择)(共20题,每题2分)1.下⾯哪些是循环语句A whileB do…whileC forD switch正确答案: A,B,C解析:while、do…while、for2.下⾯哪些属于选择结构控制语句:A ifB forC switchD while正确答案: A,C解析:固定关键字3.下⾯选项中数据类型为数字类型的有A “1”B 1C trueD NaN正确答案: B,D解析:1、NaN4.下⾯语句得到值为true的有A “1” == 1B 1===“1”C “2” > “19”D “2”==19正确答案: A,C解析:⽐较相等两个等号会有隐式类型转换,只需值相等即可,三个等号必须类型和值同时相等结果才为true,故A对B错字符串之间的⼤⼩⽐较是按照ACSII编码⼤⼩,“2”的ASCII码⽐“1”的ASCII⼤,所以C正确数字跟字符串⽐较⼤⼩会将字符串隐式转换为数字,即 2>19,D选项错误5.下⾯语句得到值为数字2的有A 1 + ‘1’B 8 % ‘3’C ‘1’ + ‘1’D ‘4’ - 2正确答案: B,D解析:A是字符串拼接,结果为:“11”; B“3”会隐式转换位3,结果为8%3=2;C为字符串拼接,结果为 “11”; D“4”会隐式转换为4,结果为4-2=2故,答案为BD6.下⾯哪些是关键字A varB functionC caseD 以上都是关键字正确答案: A,B,C,D解析:var申明变量的关键字;function申明函数的关键字;case选择分⽀的关键字故答案为ABCD7.以下是JavaScript基本数据类型的是A ObjectB numberC stringD boolean正确答案: B,C,D解析:Object是引⽤类型8.以下运算符正确的是A ++B –C &&D >=正确答案: A,B,C,D解析:⾃增、⾃减、逻辑与、⼤于或等于9.JavaScript运算符都有哪些A 赋值运算符B 算术运算符C 关系运算符D 逻辑运算符正确答案: A,B,C,D解析:赋值运算符=、数学运算符+ - * / %、⼀元运算符++ --、逻辑运算符&& || !10.JavaScript的基本组成包括A DOMB BOMC jQueryD ECMAScript正确答案: A,B,D解析:JavaScript的基本组成包括DOM、BOM和ECMAScript11.以下哪些属于循环语句A switchB forC whileD do…while正确答案: B,C,D解析:循环语句 有三个 for while do…while; switch是选择结构12.函数的参数分为A 形参B 实参C 有参D ⽆参正确答案: A,B解析:参数 分为实参和形参13.以下哪些属于基本数据类型A objectB booleanC stringD number正确答案: B,C,D解析:null 和 undefined是特殊数据类型;14.函数中实参可以是A 常量B 变量C 只能是变量D 只能是常量正确答案: A,B解析:实参可以是变量 常量 ,形参只能是变量15.逻辑运算符有A >B <C ||D &&正确答案: C,D解析:逻辑运算符有三个 && || !;AB选项是⽐较16.javascript由哪⼏部分组成A jsB ECMAScriptC DOMD BOM正确答案: B,C,D解析:BCD17.下⾯声明变量及赋值的写法正确的有A var _myName = 12aB var _myName = “12a”C var myName = 12D var $myName = true正确答案: B,C,D解析:A选项 12a是字符串,不是纯数字,字符串要⽤引号18.下⾯哪些⽅法可以实现将字符串"123",变成数值型A Number()B parseInt()C parseFloat()D Boolean()正确答案: A,B,C解析:Boolean()转成布尔值19.下⾯哪些属于关系运算符?A >B >=C <D <=正确答案: A,B,C,D解析:关系20.下⾯哪些属于逻辑运算符?A &&B ||C !D 以上都不正确正确答案: A,B,C解析:逻辑运算符(⼆)⼀、单选题1.已知数组 var arr = [1,2,3,4,5],执⾏ arr.pop() 后,数组的长度是A 4B 5C 6D 7正确答案: A解析:arr.pop()是删除数组后⼀个数据2.var array = new Array(5); array.push(8); 数组array的长度是A 5B 6C 7D 8正确答案: B解析:new Array(5);创建⼀个长度为5的空数组,push⽅法在数组后增加⼀位,结果为63.3秒后,图⽚消失,应该使⽤下⾯哪个⽅法A hide()B setTimeout()C ClearIntervalD clearTimeout()正确答案: B解析:setTimeout延时器4.下⾯哪⼀个⽅法可以查找 class 名为 “xm”的元素A document.getElementsByClassName(“xm”)B document.getElementsByName(“xm”)C document.Class(“xm”)D document.ByName(“xm”)正确答案: A解析:document.getElementsByClassName(“xm”);获取class为xm的元素5.如果弹出⼀个可输⼊信息的框,可以使⽤哪⼀个⽅法A confirm()B prompt()C alert()D以上都对正确答案: B解析:prompt6.如何快速的将数组arr清空A arr.length = 0B arr = “”C arr.length = “”D arr.length = []正确答案: A解析:强⾏将数组的length设置为0,可以清空数组7.Math.floor(-3.14) 的结果是( )A -3.14B -3C -4D 3.14正确答案: C解析:8.下⾯哪个是window窗⼝⼤⼩改变触发的事件A onmouseoverB onresizeC onmouseoutD onclick正确答案: B解析:19.判断下⾯的代码输出为 var a = 1; var b = a * 0; var a; if (b == b) { console.log(b * 2 + “2”- 0 + 4); } else { console.log(!b * 2 + “2”- 0 + 4); }A 6B NaNC 22D 26正确答案: A解析:10.请阅读下⾯代码 var num = Math.floor(Math.random()*100); 上述代码中num的取值范围是A 0–100B 1–99C 0–99D 1–100正确答案: C解析:公式:Math.random()*(max-min+1)+min11.关于nodeName描述错误的是A 元素节点的节点名始终是标签名B ⽂本节点的节点名始终是#documentC ⽂本节点的节点名始终是#textD 属性节点的节点名始终是属性名正确答案: B解析:⽂本节点名称是#text请阅读列代码⽂本list1list2list3以上代码的输出结果是Alist1B " "Clist2Dlist3正确答案: A解析:list.childNodes[0]为⽂本节点13.下列哪个对象不属于bom对象A documentB locationC historyD offsetWidth正确答案: D解析:14.关于JavaScript中的Math对象的说法,正确的是A Math.ceil(512.51)返回的结果为512B Math.floor( )⽅法⽤于对数字进⾏下舍⼊C Math.round(-512.51)返回的结果为-512D Math.random( )返回的结果范围为0-1,包括0和1正确答案: B解析:15.var arr = [3,4,6],删除数组中的最后⼀项A arr.pop()B arr.pop(6)C arr.shift()D arr.shift(6)正确答案: A解析:16.var arr = [5,3,2,4]; var res = arr.splice(0); console.log(res) 结果是A [5,3,2,4]B [5]C [5,3]D [2,4]正确答案: A解析:17.实现数组的倒序⽅法A reverse()B sort()C join()D find()正确答案: A解析:18.var str = “qianfengana”; var res = stIndexOf(“a”); console.log(res); 输出的结果是A 9B 2C 7D 10正确答案: D解析:19.添加节点的⽅法A ⽗节点.appendChild()B ⽗节点.append()C ⽗节点.prepend()D ⽗节点.prependChild()正确答案: A解析:20.var arr = [how,are,you]; arr.reverse(); alert(arr)A how,are,youB you,are,howC h,o,w,a,r,e,y,o,uD u,o,y,e,r,a,w,o,h正确答案: B解析:reverse翻转,直接修改原数组21.下列关于innerHTML和innerText描述正确的是A innerHTML会被解析成html标签渲染,innerText是纯⽂本显⽰B innerHTML会发⽣转义如 < 会被转换成 < ,innerText原样渲染C innerHTML和innerText都会被解析成html标签渲染D innerHTML和innerText都是纯⽂本显⽰正确答案: A解析:innerhtml不会发⽣转义22.关于setInterval(check ,10)中说法正确的是A 程序循环执⾏10次B check函数每10秒执⾏⼀次C 10做为参数传给函数checkD check函数每10毫秒执⾏⼀次正确答案: D解析:基本定时器概念23.获取从1970年/01/01 午夜到当前时间的毫秒值A getTime()B getDay()C setDate()D getDate()正确答案: A解析:A24.var arr = [100,4,2,3,200]; alert(arr.sort(function(a,b){return b - a;}))A 2,3,4,100,200B 200,100,4,3,2C 100,2,200,3,4D 4,3,200,2,100正确答案: B解析:解析:sort添加了⽐较器函数,并且b-a是降序排序25.在JavaScript中,下列关于window对象⽅法的说法错误的是A window对象包括location对象、history对象和document对象B window.onload 事件绑定的函数会在⼀个该页⾯加载完成后执⾏C window.open( )⽅法⽤于关闭指定的URL路径D window.close( )⽅法⽤于关闭浏览器窗⼝正确答案: C解析:open() ⽅法⽤于打开⼀个新的浏览器窗⼝或查找⼀个已命名的窗⼝。
javascript试题及答案

javascript试题及答案一、选择题(每题2分,共20分)1. JavaScript是一种:A. 编程语言B. 操作系统C. 浏览器D. 数据库答案:A2. 下列哪个不是JavaScript的内置对象?A. ArrayB. DateC. MathD. String答案:D3. JavaScript中,用于判断一个变量是否为数组的函数是:A. isArray()B. typeofC. instanceofD. Array.isArray()答案:D4. 在JavaScript中,以下哪个关键字用于定义全局变量?A. varB. letC. constD. all of the above答案:D5. 下列哪个选项是JavaScript中的函数声明?A. function myFunction() {}B. const myFunction = function() {};C. let myFunction = function() {};D. both A and B答案:D6. JavaScript中,用于创建对象的语法是:A. var obj = new Object();B. var obj = { name: "Kimi" };C. both A and BD. none of the above答案:C7. 在JavaScript中,以下哪个方法用于将字符串转换为小写?A. toLowerCase()B. toUpperCase()C. toLower()D. toUpper()答案:A8. 以下哪个选项是JavaScript中的事件类型?A. clickB. loadC. both A and BD. none of the above答案:C9. JavaScript中,用于获取当前日期和时间的函数是:A. Date()B. new Date()C. getTime()D. both A and B答案:D10. 下列哪个选项是JavaScript中的异步编程模式?A. CallbackB. PromiseC. Async/AwaitD. all of the above答案:D二、填空题(每题2分,共20分)1. JavaScript是一种运行在______上的脚本语言。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
j s基础第一次测试题
(附答案)
JavaScript学期第一次测试题
本试题满分100分,100分钟完卷
一、选择题(每题2分,多选题错选、少选不得分)
1、分析下段代码输出结果是(B)
var arr = [2,3,4,5,6];
var sum =0;
for(var i=1;i < arr.length;i++) {
sum +=arr[i] }
console.log(sum);
A.20 B.18 C.14 D.12
2、以下关于 Function函数对象的说法不正确的是(D )A.函数可有可无返回值
B.调用函数时传递的参数是实参
C.函数调用时候,可以用一个变量来接收函数返回值D.函数必须要有形式参数
3、以下代码运行的结果是输出(B )
var a = b = 10;
(function(){
var a=b=20
})();
console.log(b);
A.10 B.20 C.报错 D.undefined
4、以下代码运行后的结果是输出( A )
var a=new Object();
=”admin”
console.log();
A.admin B.a C.“admin” D.[a] 5、在 JS 中,’1555’+3 的运行结果是( C ) A.1558 B.1552 C.15553 D.1553
6、以下代码运行后弹出的结果是( B )
var a = 888;
++a;
alert(a++);
A.888 B.889 C.890 D.891
7、关于变量的命名规则,下列说法正确的是( ABCDE )A.首字符必须是大写或小写的字母,下划线(_)或美元符($)B.除首字母的字符可以是字母,数字,下划线或美元符
C.变量名称不能是保留字
D.长度是任意的
E.区分大小写
8、下列的哪一个表达式将返回值为假( B )
A.!(3<=1)
B.(4>=4)&&(5<=2)
C.(“a”==“a”)&&(“c”!=“d”)
D.(2<3)||(3<2)
9、下面代码,k的运行结果是( B )
var i = 0,j = 0;
for(;i<10,j<6;i++,j++){
k = i + j;
}
A.16 B.10 C.6 D.12
10、var x = 1; function fn(n){n = n+1}; y = fn(x); y 的值为( D )
A.2 B.1 C.3 D.undefined
11、[1,2,3,4].join("0").split("") 的执行结果是( C )A."1,2,3,4"
B.[1,2,3,4]
C.[“1”,“0”,“2”,“0”,“3”,“0”,“4”] D."1,0,2,0,3,0,4"
12、下面代码的运行结果是:第一次弹( A )第二次弹( D ) function fn1() {
alert(1);
}
alert( fn1() );
A.1
B.alert(1);
C.function fn1() { alert(1); }
D.undefined
13,以下代码运行后,结果为( B )
fn1();
var fn1 = function(a){ alert(a); }
A.1 B.程序报错 C.alert(1); D.undefined
14,var n = "miao wei ke tang".indexOf("wei",6);n的值为:( A )
A.-1 B.5 C.程序报错 D.-10
15,下面对 substring() 方法描述不正确的是( C )
A.一共有两个参数,省略第二个参数表示从参数开始位置提、截取到字符串结束。
B.提取之前会比较两个参数的大小,并根据大小调整位置。
C.可以接收负数参数,负数表示从后往前数字符位置。
D.如果没有设置参数,直接返回整个字符串。
16,alert( "12">"9" ) 的运行结果正确的是( B )A.true B.False C. 1 D. 0
17,下面的描述中不正确的是( C )A.arguments 中保存了实际传入函数内的所有参数。
B.return 只能在函数内部使用。
C.setInterval(fn1,1000) 只会调用一次 fn1。
D.Date 对象的 getMonth() 获取到的值比实际月份小1。
18,下面的等式成立的是(D)
A.parseInt(12.5) == parseFloat(12.5)
B.Number("") == parseFloat("")
C.isNaN("abc") == NaN
D.typeof NaN === "number"
19,下面的描述中不正确的是(ABC )
A."==" 在比较过程中,不但会比较两边的值,还会比较两边的数据类型。
B.NaN == NaN 的结果是 true。
C.isNaN,判断传入的参数是否为数字,为数字返回true,否则返回false
D.字符串的 length 只可以获取,不可以设置。
20,以下代码中,会出现什么结果:第一次弹( A ),第二次弹( A ),第三次弹(B )
function fn1() {
var a = 0;
function fn2() { ++a; alert(a); }
return fn2;
}
fn1()();
var newFn = fn1();
newFn();
newFn();
A.1 B.2 C.0 D.3
21,下面代码的运行结果是:第一次弹( D ),第二次弹( D ) var a = 100;
function fn1() {
alert(a);
var a = 10;
}
alert( fn1() );
A.100
B.10
C.function fn1() { alert(1); }
D.undefined
22,下列程序中alert按顺序分别弹出:(B ),(A ),(B ) var a = 10;
function test() {
a = 100;
alert(a);
alert(this.a);
var a;
alert(a);
}
test();
A.10 B.100 c.undefined D.程序报错
23,请选择结果为真的选项( A)
A.null == undefined
B.null === undefined
C.undefined == false
D.NaN == NaN
24, 以下 ECMAScript 变量命名格式正确的是( A )
A._125dollor B.1207A C.-dollor D.this
25,Switch括号内的数据类型可以为(B)
A.Boolean B Number C null D undifined
二、问答题(1题20分,2题15分,3题15分)
1,手写代码,需求是:创建一个对象,并对对象的属性赋值,在创建一个SayHello方法,方法体内打印输出Hello World,最后分别采用函数式调用和方法式调用对象的SayHello方法。
2,手写代码的方式:程序输出一个九九乘法表。
3,分别手写代码用两种方法实现求100以内的偶数之和。