JavaScript基础题、练习题、面试题(一)

一、单选题(共30题,每题2分)
得分:2.0分
1.

HTML页面中写JavaScript时,会用到HTML的一个标签,它是

A  

script

B  

style

C  

link

D  

body

正确答案: A
解析:

得分:2.0分
2.

以下代码执行后,分别弹出来的值是: var num1=1;   function testf1(){  num1=2;    var num1;  alert(num1); } function testf2(){  alert(num1); }   testf1();   testf2();

A  

2,1

B  

2,2

C  

undefined,undefined

D  

2,undefined

正确答案: A
解析:

testf1函数先执行, 先进行变量提升, 且里面的num1为私有变量,不会更改全局变量

testf2 里面的num1为全局变量

得分:2.0分
3.

如下代码,会弹出来是什么 var num1="1" ;var num2=1 alert(num1-num2);

A  

0

B  

11

C  

1+1

D  

报错

正确答案: A
解析:

相减,进行隐士转换,全部为数字

得分:2.0分
4.

var k=12; var sum = k++ + ++k + ++k*2 + k-- + k-- document.write(sum + “” + k)

A  

85 13

B  

84 12

C  

83 11

D  

85 14

正确答案: A
解析:

得分:0.0分
5.

var x = 1; function fn(n){        n = n+1; }; y = fn(x); y 的值为

A  

2

B  

1

C  

3

D  

undefined

正确答案: D
解析:

undefined

得分:0.0分
6.

while语句的正确使用是

A  

while i=(1<>10)

B  

while(i<=10)

C  

while(i<=10;i++;)

D  

while i=1 to 10

正确答案: B
解析:

while(i<=10)

得分:2.0分
7.

分析下段代码输出结果是 var a = 10; function test(a){   a -=3;   console.log(a); } test(a);

A  

7

B  

10

C  

13

D  

NaN

正确答案: A
解析:

7

得分:2.0分
8.

分析下段代码输出结果是 var t = 10; function test(test){      t = t + test;      var t = 3;      console.log(t); } test(t);

A  

6

B  

3

C  

13

D  

NaN

正确答案: B
解析:

3

得分:2.0分
9.

哪个操作符比较变量需要比较值及类型

A  

==

B  

===

C  

=

D  

以上都不用

正确答案: B
解析:

===

得分:2.0分
10.

代码的输出结果是 var a = 3; function fn(){        var b = 4;        alert(a);          alert(b);          function me(){                alert(b);        }        me(); } fn(); alert(a);

A  

3 4 4 3

B  

3 4 3

C  

3 4 4

D  

3 4 3 4

正确答案: A
解析:

a是全局变量,b是局部变量

得分:2.0分
11.

代码的输出结果是 var str =""; var i = 1; while(i <= 10){        if(i % 2){        str += i + '  ';    }        i ++; } document.write(str + '<br>');

A  

1,3,5,7,9

B  

1 3 5 7 9

C  

2,4,6,8,10

D  

2,4,6,8

正确答案: B
解析:

奇数用空格拼接,最后输出

得分:0.0分
12.

Number("12a")的结果是

A  

NaN

B  

12a

C  

0

D  

12

正确答案: A
解析:

Number()的转换规则:只要字符串中有不是数字的字符,就为NaN,所以答案为A

得分:2.0分
13.

isNaN("3a")的结果是

A  

true

B  

false

C  

NaN

D  

3

正确答案: A
解析:

isNaN()带有隐式转换Number()方法,所以结果转为NaN,isNaN()如果是NaN就是true,否则为false,选A

得分:2.0分
14.

6 > 4  &&  false 运算的结果是

A  

true

B  

undefined

C  

报错

D  

false

正确答案: D
解析:

要保证&&左右两边都为真,&&左边为真,并不意味着整个表达式为真;所以得走&&符右边,由于&&右边是一个数,所以返回这个数

得分:2.0分
15.

var num = 1; console.log(typeof typeof typeof num); 打印的结果是

A  

"string"

B  

"number"

C  

"NaN"

D  

"1"

正确答案: A
解析:

因为第一次typeof结果是“number”; number加了引号,认为是字符串;以后再typeof 就是字符串了

得分:2.0分
16.

JavaScript代码必须出现在下面的哪个标签内部才可以被执行?

A  

body

B  

head

C  

div

D  

script

正确答案: D
解析:

script标签可以出现在页面的标签的任意处

得分:2.0分
17.

我们可以在下列哪个HTML元素中放置JavaScript代码

A  

<javascript>

B  

<js>

C  

<script>

D  

<scripting>

正确答案: C
解析:

js代码放在<script>标签里

得分:2.0分
18.

若有定义 var x=10,则以下哪条结果不等于11

A  

console.log(x++)

B  

x=11;console.log(x)

C  

x+=1; console.log(x)

D  

console.log(++x)

正确答案: A
解析:

变量后++   先把值赋给整个表达式,再++;  所以A不对

得分:2.0分
19.

函数返回值用下面哪个关键字返回?

A  

return

B  

break

C  

continue

D  

switch

正确答案: A
解析:

var arr = [3]; 创建了一个长度为1的数组,值为3

得分:2.0分
20.

有下述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=11

B  

x=11; y=20; z=10

C  

x=11; y=21; z=10

D  

x=11; y=20; z=11

正确答案: B
解析:

x=11; y=20; z=10

得分:0.0分
21.

查看如下代码:  function f1( ){        console.log(x);        var x = 10;       ++x;       console.log(x);  }  f1();  执行后的结果是

A  

程序错误

B  

undefined 和 10

C  

undefined 和 11

D  

10 和 11

正确答案: C
解析:

undefined 和 11

得分:0.0分
22.

如下代码,会弹出来是什么 var a; alert(a);

A  

报错

B  

a is not define

C  

undefined

D  

0

正确答案: C
解析:

变量提升

得分:2.0分
23.

JavaScript的组成不包括

A  

ECMAScript

B  

DOM

C  

BOM

D  

document

正确答案: D
解析:

得分:2.0分
24.

JavaScript的组成不包括

A  

ECMAScript

B  

DOM

C  

BOM

D  

document

正确答案: D
解析:

得分:2.0分
25.

var  k  = 1; console.log( k++   +  k   +     ++k  + k); 结果是

A  

10

B  

8

C  

9

D  

11

正确答案: C
解析:

1+2+3+3=9

得分:0.0分
26.

console.log( (2==true)+1 )会弹出

A  

true

B  

false

C  

1

D  

2

正确答案: C
解析:

得分:2.0分
27.

var num = 123.456789;哪种方法可以保留3位小数

A  

num.toString(3)

B  

num.toFixed(3)

C  

parseFloat(num,3)

D  

Number(num,3)

正确答案: B
解析:

注意,只有数值类型的变量,才有toFixed方法

得分:2.0分
28.

ES3的标准中,Javascript语言中定义变量的关键字是var,有时候不写,也没有错,此时,这个变量是

A  

局部变量

B  

全局变量

C  

有可能是全局也有可能是局部

D  

报错

正确答案: B
解析:

默认前面添加了一个window, 为全局变量

得分:2.0分
29.

如下代码,会弹出来是什么 var num1="1"; var num2=1 alert(num1+num2)

A  

2

B  

11

C  

1+1

D  

报错

正确答案: B
解析:

隐士转换

得分:0.0分
30.

for(var i=0;i<10;i++){ sum += i; } console.log( i )

A  

8

B  

9

C  

10

D  

11

正确答案: C
解析:

二、多选题(不定项选择)(共20题,每题2分)
得分:2.0分
1.

下面哪些是循环语句

A  

while

B  

do...while

C  

for

D  

switch

正确答案: A,B,C
解析:

while、do…while、for

得分:2.0分
2.

下面哪些属于选择结构控制语句:

A  

if

B  

for

C  

switch

D  

while

正确答案: A,C
解析:

固定关键字

得分:2.0分
3.

下面选项中数据类型为数字类型的有

A  

"1"

B  

1

C  

true

D  

NaN

正确答案: B,D
解析:

1、NaN

得分:0.0分
4.

下面语句得到值为数字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  

故,答案为BD

得分:2.0分
5.

下面哪些是关键字

A  

var

B  

function

C  

case

D  

以上都是关键字

正确答案: A,B,C,D
解析:

var申明变量的关键字;function申明函数的关键字;case选择分支的关键字

故答案为ABCD

得分:0.0分
6.

以下是JavaScript基本数据类型的是

A  

Object

B  

number

C  

string

D  

boolean

正确答案: B,C,D
解析:

Object是引用类型

得分:2.0分
7.

JavaScript运算符都有哪些

A  

赋值运算符

B  

算术运算符

C  

关系运算符

D  

逻辑运算符

正确答案: A,B,C,D
解析:

赋值运算符=、数学运算符+ – * / %、一元运算符++  –、逻辑运算符&&  || !

得分:2.0分
8.

程序都有哪些结构

A  

顺序结构

B  

选择结构

C  

循环结构

D  

以上都不正确

正确答案: A,B,C
解析:

程序结构有顺序结构选择结构和循环结构

得分:2.0分
9.

JavaScript的基本组成包括

A  

DOM

B  

BOM

C  

jQuery

D  

ECMAScript

正确答案: A,B,D
解析:

JavaScript的基本组成包括DOM、BOM和ECMAScript

得分:0.0分
10.

以下变量命名规范正确的是

A  

$num

B  

1num

C  

num

D  

num1

正确答案: A,C,D
解析:

变量名  不能以数字开头

得分:2.0分
11.

下面哪些方法可以实现将字符串“123”变成数值型

A  

Number()

B  

parseInt()

C  

parseFloat()

D  

Boolean()

正确答案: A,B,C
解析:

Boolean()是将某个数据类型转为布尔型; 

得分:2.0分
12.

函数的参数分为

A  

形参

B  

实参

C  

有参

D  

无参

正确答案: A,B
解析:

参数  分为实参和形参

得分:0.0分
13.

以下哪些属于基本数据类型

A  

object

B  

boolean

C  

string

D  

number

正确答案: B,C,D
解析:

null 和 undefined是特殊数据类型;  

得分:2.0分
14.

下列哪些是布尔值

A  

0

B  

1

C  

false

D  

true

正确答案: C,D
解析:

布尔只有两个值  true和false

得分:2.0分
15.

函数中实参可以是

A  

常量

B  

变量

C  

只能是变量

D  

只能是常量

正确答案: A,B
解析:

实参可以是变量 常量 ,形参只能是变量

得分:0.0分
16.

逻辑运算符有

A  

>

B  

<

C  

||

D  

&&

正确答案: C,D
解析:

逻辑运算符有三个  &&   ||     !;AB选项是比较

得分:2.0分
17.

javascript由哪几部分组成

A  

js

B  

ECMAScript

C  

DOM

D  

BOM

正确答案: B,C,D
解析:

BCD

得分:0.0分
18.

下面声明变量及赋值的写法正确的有

A  

var _myName = 12a

B  

var _myName = "12a"

C  

var myName = 12

D  

var $myName = true

正确答案: B,C,D
解析:

A选项 12a是字符串,不是纯数字,字符串要用引号

得分:0.0分
19.

关于NaN的说法正确的是

A  

NaN的数据类型为数字类型 也就是 typeof(NaN)的结果为number

B  

NaN == NaN 返回true

C  

NaN不等于任何数,包括自己本身,NaN == NaN 返回false

D  

如果已知变量num不是数字,那么num == NaN 将得到true

正确答案: A,C
解析:

NaN指not a number,但是typeof(NaN)返回值却是“number”,所以他是数字类型,A正确

Boolean(NaN)返回值为false,B错误

NaN与任何值进行运算,都得到NaN,C正确

NaN不能用关系运算符跟任意值比较都返回false,判断一个数是否为NaN需使用全局函数isNaN(),D错误

得分:2.0分
20.

下面哪些属于逻辑运算符?

A  

&&

B  

||

C  

!

D  

以上都不正确

正确答案: A,B,C
解析:

逻辑运算符

JavaScript基础题、练习题、面试题(一)》有0个想法

  1. ES3的标准中,Javascript语言中定义变量的关键字是var,有时候不写,也没有错,此时,这个变量是

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注