JAVASCRIPT练习题1
- 格式:pdf
- 大小:148.33 KB
- 文档页数:15
javascript期末考试题及答案JavaScript期末考试题及答案一、选择题(每题2分,共20分)1. JavaScript是一种:A. 服务器端脚本语言B. 客户端脚本语言C. 操作系统D. 数据库管理系统答案:B2. 下列哪个不是JavaScript的数据类型?A. NumberB. StringC. UndefinedD. File答案:D3. 以下哪个是JavaScript的全局对象?A. StringB. ObjectC. MathD. Array答案:C4. 在JavaScript中,下面哪个语句可以用来声明变量?A. varB. letC. constD. 所有选项都是答案:D5. 下列哪个是JavaScript的事件处理程序?A. onclickB. onmouseoverC. onsubmitD. 所有选项都是答案:D6. 在JavaScript中,以下哪个方法用于将字符串转换为数字?A. parseInt()B. parseFloat()C. toString()D. toUpperCase()答案:A7. 下列哪个不是JavaScript的循环结构?A. forB. whileC. do-whileD. switch答案:D8. JavaScript中的函数声明和函数表达式有什么区别?A. 函数声明可以被提升,函数表达式不能B. 函数表达式可以被提升,函数声明不能C. 两者没有任何区别D. 以上都不是答案:A9. 下列哪个不是JavaScript的数组方法?A. push()B. pop()C. shift()D. find()答案:D10. 在JavaScript中,以下哪个是异步编程的实现方式?A. PromiseB. CallbackC. Async/AwaitD. 所有选项都是答案:D二、简答题(每题5分,共30分)1. 请简述JavaScript的作用域链是什么?答案:JavaScript的作用域链是一个由多个执行上下文组成的链式结构,它决定了变量和函数的可访问性。
javascript练习题1. 编写一个函数,接受两个参数,返回两个参数的和。
```javascriptfunction sum(a, b) {return a + b;}```2. 编写一个函数,接受一个数组作为参数,并返回数组中所有元素的和。
```javascriptfunction arraySum(arr) {let sum = 0;for (let i = 0; i < arr.length; i++) {sum += arr[i];}return sum;}```3. 编写一个函数,接受一个字符串作为参数,并返回该字符串的长度。
```javascriptfunction getStringLength(str) {return str.length;}```4. 编写一个函数,接受一个数组作为参数,并返回数组中最大的数字。
```javascriptfunction findMaxNumber(arr) {let max = arr[0];for (let i = 1; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];}}return max;}5. 编写一个函数,接受一个字符串作为参数,并返回该字符串中包含的大写字母个数。
```javascriptfunction countUppercaseLetters(str) {let count = 0;for (let i = 0; i < str.length; i++) {if (str[i] >= 'A' && str[i] <= 'Z') {count++;}}return count;}```6. 编写一个函数,接受一个数组作为参数,并返回一个新数组,新数组中包含原数组中的偶数。
```javascriptfunction filterEvenNumbers(arr) {return arr.filter(num => num % 2 === 0);```7. 编写一个函数,接受一个字符串作为参数,并返回该字符串中出现次数最多的字符。
js测试题及答案一、单选题(每题2分,共10分)1. JavaScript中,以下哪个是正确的变量声明方式?A. var name = "Kimi"B. name = "Kimi"C. const name = "Kimi"D. var name = Kimi答案:C2. 在JavaScript中,以下哪个是正确的函数声明?A. function myFunction() { }B. function myFunction() { return "Hello"; }C. var myFunction = function() { }D. All of the above答案:D3. 下列哪个选项是JavaScript中的全局对象?A. windowB. documentC. navigatorD. All of the above答案:D4. 在JavaScript中,以下哪个是正确的数组声明方式?A. var colors = "red", "green", "blue";B. var colors = ["red", "green", "blue"];C. var colors = new Array("red", "green", "blue");D. All of the above答案:D5. 下列哪个选项是JavaScript中的严格模式?A. "use strict";B. "use strict":C. 'use strict';D. All of the above答案:A二、多选题(每题4分,共20分)6. JavaScript中,以下哪些是合法的标识符?A. _variableB. 2variableC. $variableD. variable-答案:A, C7. 在JavaScript中,以下哪些是有效的数据类型?A. NumberB. StringC. BooleanD. Undefined答案:A, B, C, D8. 下列哪些是JavaScript中的对象?A. ArrayB. DateC. MathD. Function答案:A, B, C, D9. 在JavaScript中,以下哪些是正确的事件类型?A. clickB. loadC. submitD. error答案:A, B, C, D10. 下列哪些是JavaScript中的错误类型?A. SyntaxErrorB. TypeErrorC. ReferenceErrorD. Error答案:A, B, C, D三、判断题(每题2分,共10分)11. JavaScript是弱类型的语言。
javascript练习题推荐JavaScript是一种广泛应用于网页开发的脚本语言,通过学习和练习JavaScript,可以提升你的编程能力并构建出更加交互动态的网页。
本文将推荐一些适用于不同水平的JavaScript练习题,帮助你巩固和扩展自己的JavaScript技能。
一、初级练习题1. 简单计算器:编写一个JavaScript函数,实现简单的加减乘除运算。
要求用户输入两个数字和运算符,然后输出计算结果。
2. 奇数偶数判断:编写一个JavaScript函数,判断给定的数字是奇数还是偶数。
要求用户输入一个数字,然后输出结果。
3. 字符串反转:编写一个JavaScript函数,将给定的字符串反转并输出。
要求用户输入一个字符串,然后输出反转后的结果。
二、中级练习题1. 数组去重:编写一个JavaScript函数,实现数组去重。
要求给定一个数组,输出去除重复元素后的新数组。
2. 阶乘计算:编写一个JavaScript函数,计算给定数字的阶乘。
要求用户输入一个数字,然后输出计算结果。
3. 查找最大元素:编写一个JavaScript函数,找出给定数组中的最大元素并输出。
要求给定一个数组,输出最大元素的值。
三、高级练习题1. Todo List:编写一个简单的Todo List应用,实现添加、删除、标记已完成等功能。
要求使用JavaScript构建前端交互,并能够保存和读取用户的Todo List。
2. 时间倒计时:编写一个JavaScript函数,实现倒计时功能。
要求用户输入一个目标日期和时间,然后输出距离目标时间还有多少时间。
3. 图片轮播:编写一个JavaScript函数,实现图片轮播功能。
要求用户输入一组图片地址,并能够在页面上自动切换展示不同的图片。
通过完成以上练习题,你可以逐渐提升自己的JavaScript编程能力。
同时,你也可以根据自己的兴趣和需求,寻找更多的练习题来进行实践。
记住,不断练习是成为一名优秀JavaScript开发者的关键!。
Javascript题库⼀、填空题1. JavaScript有两种引⽤数据类型:__数组___、__对象__。
2. Javascript通过__setTimeout___延迟指定时间后,去执⾏某程序。
3. Javascript⾥String对象通过__indexOf__⽅法取第⼀次出现⼦字符串的字符位置。
4. Javascript⾥取字符串的长度是__.length__,取数组的长度是 ___.length_____。
5. Javascript⾥若已知元素name,通过__ getElementsByName()___可以获得⼀组元素。
6. Javascript弹出对话框的三个命令__alert() promot() confirm()__。
7. Javascript⾥字符串执⾏正则的⽅法是,字符串⾥根据指定字符切割的⽅法是__ split()__。
8. Javascript⾥Math的___random()__⽅法返回介于0和1之间的伪随机数。
9. Javascript通过__setTimeout _延迟指定时间后,去执⾏某程序。
10. ⽤javascript将ID为mydiv的标签元素的样式名设置为 document.getElementById(‘mydiv’).className=’bigfont’;__ ___。
11. JavaScript有两种特殊数据类型:__ null ___、_ undefined __ _。
12. Javascript中, 如果已知HTML页⾯中的某标签对象的id=”username”,⽤ ___ document.getElementById(‘username’)___⽅法获得该标签对象。
13. JavaScript有两种复合数据类型:__数组___、__对象___。
14. 通过Javascript使页⾯后退的代码是__ history.back() ___。
javascript试题一、选择题1. JavaScript中的哪个对象是用来获取当前页面的URL地址的?A. windowB. documentC. historyD. location2. 下列哪个选项是JavaScript中用来创建一个新的日期对象的方法?A. new Date()B. Date()C. currentTime()D. getYear()3. 在JavaScript中,用于获取字符串长度的属性是什么?A. lengthB. sizeC. countD. number4. 下面的哪个关键字用于在JavaScript中定义一个循环,该循环会一直执行直到指定的条件被满足?A. forB. whileC. do...whileD. until5. 在JavaScript中,如何正确地将一个变量声明为全局变量?A. var globalVariable = "Hello, World!";B. globalVariable = "Hello, World!";C. window.globalVariable = "Hello, World!";D. All of the above二、填空题1. 在JavaScript中,使用________关键字可以将函数定义为匿名函数。
2. JavaScript中,可以使用________方法来连接两个或多个字符串。
3. 在JavaScript中,________对象提供了一系列的事件监听器和方法,可以用来处理浏览器事件。
4. 使用JavaScript创建一个空数组,可以使用________表达式。
5. 要将JavaScript代码中的一个元素添加到数组的末尾,可以使用数组对象的________方法。
三、判断题1. JavaScript是一种服务器端脚本语言。
()2. 在JavaScript中,所有的代码都必须放在HTML文档的<head>标签内。
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试题及答案一、选择题(每题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是一种运行在______上的脚本语言。
js试题及答案1. 单选题:以下哪个选项是JavaScript中声明变量的正确方式?A. var variableB. var variable;C. variableD. variable;答案:B2. 多选题:在JavaScript中,以下哪些是合法的变量名?A. _variableB. $variableC. 2variableD. variableName答案:A, B, D3. 判断题:JavaScript中,函数可以作为值传递。
正确/错误答案:正确4. 填空题:在JavaScript中,使用______( )函数可以创建一个新对象。
答案:new Object5. 简答题:请简述JavaScript中闭包的概念。
答案:闭包是指一个函数和它声明时所在的词法环境的组合。
它允许函数访问其定义时的作用域链,即使在其定义的作用域之外执行。
6. 编程题:编写一个JavaScript函数,该函数接受一个数字数组作为参数,并返回数组中的最大值。
```javascriptfunction findMaxValue(arr) {return Math.max(...arr);}```7. 单选题:以下哪个选项不是JavaScript中的数据类型?A. NumberB. StringC. BooleanD. Undefined答案:D8. 多选题:在JavaScript中,以下哪些是字符串对象的方法?A. toLowerCase()B. toUpperCase()C. split()D. join()答案:A, B, C, D9. 判断题:JavaScript中,使用`==`运算符时,会进行类型转换。
正确/错误答案:正确10. 填空题:在JavaScript中,使用______( )函数可以获取当前日期和时间。
答案:new Date11. 简答题:请解释JavaScript中的原型继承。
答案:JavaScript中的原型继承是通过原型链实现的。
1、第一个练习(1)js文件中的函数不会自动执行,需要调用才能执行。
调用函数只需在button属性中onclick="函数名();"就行,<script>声明在<form>前面后面都行(2)数组的长度可以随意变化,定义数组可以用new Array (1,2,3,4),也可以直接用[1,2,3,4](3)jion函数表示把数组里的所有变量组合成一个字符串,可以设置参数如jion(“-”),不设置参数时默认连接符是“,”。
(4)“==”比较的是两个变量的内容是否相等,“===”比较的是两个变量的类型和内容是否相等。
(5)对数组的sort()方法,用来对数组元素进行排序整理,可以设置参数(类似于java的比较器)function a(i,j){return parseInt(i)-parseInt(j);}然后就可以sort(a),不设置参数的话就按照ASCL依次比较字符"输出.js"文件alert("这个能显示吗????")//定义一个数组var number=[1,2,3,4,5,11,12,13];number=new Array(6,7,8,9);//排序number.sort();for(var i=0;i<number.length;i++){document.write(number[i]+" ");}//反转number.reverse();document.write("<br/>");alert(number[0]);for(var i=0;i<number.length;i++){document.write(number[i]+" ");}//定义一个学生数据var student=new Array("刘备","张飞","关羽","赵云");alert(student.join());function check(){//得到用户输入用户名var name=document.getElementById("userName").value;if(name=="芝麻开门"){alert("你成功啦,你将进入另一个页面。
")window.location="new.html";}else{alert("暗号错误,请重新输入!");}}html代码<html><head><meta http-equiv="Content-Type"content="text/html; charset=gb2312"/><title>第一次使用Dreamweaver</title></head><body><script src="输出.js"></script>><form>请输入暗号:<input type="text"id="userName"/><input type="button"value="开门"onclick="check();"> </form></body></html>2、prompt输入框(1)prompt(“提示信息”,“默认值”)用来弹出输入框,提示信息中有“\n”可起回车作用(2)prompt返回的是用户输入的内容用户点“确认”,返回输入内容用户点“取消”,返回“”,而不是null(3)document.write(“*********”)是在html网页中输出,要回车"\n"是不行的,需要“<br/>”<html><head><meta http-equiv="Content-Type"content="text/html;charset=gb2312"/><title>使用变量</title></head><body><script>var price=prompt("脚本提示\n淘宝网,一口价","123");if(price!="")document.write("拍卖价格"+price+"<br/>"+"恭喜你,最高价拍卖");alert("欢迎下次光临!");</script></body></html>3、九九乘法表(1)<script>标签中间的是可执行的js代码,在这中间不能直接写其他标签,需要的话要用document.write(“<**>”)输出。
(2)for循环和function函数的参数定义时,由于肯定是var修饰符修饰,都可以不写,也可以写。
<html><head><meta http-equiv="Content-Type"content="text/html;charset=gb2312"/><title>九九乘法表</title></head><body><script>document.write("<table border=1>")for(var i=1;i<=9;i++){document.write("<tr>")for(var j=1;j<=i;j++){document.write("<td>"+j+"*"+i+"="+j*i+"</td>")}document.write("</tr>")}document.write("</table>")</script></body></html>4、按钮单击事件(1)如果不在页面输出文本内容,<body>组件可以不写但一般不会的。
(2)document.getElementById("***")得到的是组件,要得到值还要调用value(3)isNaN(“****”)方法可以判断内容是不是数字if(Number(x)==x)也可以判定)(API里do while是用到)<html><head><meta http-equiv="Content-Type"content="text/html;charset=gb2312"/><title>无标题文档</title></head>整数:<input type="text"name="int"value="输入一个整数"id="int"><input type="button"name="confirm"value="确认"onclick="conf();"><script>function conf(){//得到int组件var ii=document.getElementById("int").value;if(!isNaN(ii)){document.write("输入的数是数字<br/>平方是:"+ii*ii)document.write("<br/>现在的时间是"+new Date())}else{alert("输入的内容不是数字,请重新输入!!!")}}</script></form>5、刷新图片(1)meta定义在HTML3.2中,只能在head元素内使用,不会被渲染,不用关闭标签,向服务器和客户端传达关于文档的隐藏信息。
下面代码中http-equiv="refresh"content="2"结合实现2秒一刷新(2)Math对象的方法和java中Math类中方法类似,另外还有PI、2的平方根等一些常量属性。
Math.floor("***")向下取整Math.random()生成随机数<html><head><meta http-equiv="refresh"content="2"/><script>document.write("2秒自动刷新,随即显示图片");var i=0;i=Math.floor(Math.random()*4)+1;document.write(i);document.write("<img width=400height=330src=pic/"+i+".jpg>")</script></head><body></body></html>6、计算器(1)要给组件赋值只需要得到组件,然后给组件的value赋值即可。
(2)当几个触发事件做的操作相同就可以一个方法完成,只需要传不同的参数,在差异处做出判定。