一、单选题

1. 下列变量名合法的是 ( C )

A: 5show

B: return

C: $user

D: var

2. parseInt("6*7", 10) 的 结果是( C )

A: 42

B: "42"

C: 6

D: NaN

注:遇到第一个不为零的数字直接截取,第一个参数表示是进制

3. 请问下面那个方法可以删除数组最后一个元素?(C)

A: shift()

B: unshift()

C: pop()

D: push()

4. js 数据类型说法错误的是?(D)

A: js 数据类型分为基本数据类型和引用数据类型

B: 简单类型又叫做基本数据类型或者值类型

C: 复杂类型又叫做引用类型

D: 简单数据类型存放到堆里面,引用数据类型存放到栈里面

5. 以下while循环的次数是(C)

let i = 0
while (i===1){
    i++
}

A: 无限次

B: 有语法错误, 不能执行

C: 一次也不执行

D: 执行一次

6. 下面不属于JavaScript数据类型的是? (D )

A、 number B、 string C、 boolean D、 int

7. 下列哪种方式访问对象属性会报错(D)

const obj = {
    name:'周杰伦',
    age: 20
}

A: obj['name']

B: obj.name

C: obj["age"]

D: obj[age]//不带引号是变量

8. 关于for...in遍历对象,如下描述正确的是(C)

A: 只能遍历数组属性

B: 只能遍历对象的属性

C: 语句用于遍历数组或者对象的属性, 但是我们不推荐使用for in遍历数组

D: 语句不能遍历数组

9. 下列哪一个语句结果为22 (D)⭐

var num1 = 5
var num2 = 4

A: ++num2 + num1 * 2 + num2++(5+10+5)

B: ++num2 + num1 * 2 + ++num2 + 2

C: ++num2 + num1 * 2 + num2 * 2 - 2

D: num2++ + num1 * 2 + num2 * 2 - 2(4+10+10-2)

10. 关于数组的描述错误的是(C)

A: 可以用 new Array(1, 2, 3, 4) 这种方式创建数组

B: 数组的创建方式还可以是 [1, 2, 3, 4, 5]

C: 数组的每一项值都有索引, 索引默认从1开始

D: 数组是引用数据类型,或者说是复杂数据类型

11. 下面哪个选项可以产生 0 <= num <= 10 的随机数 ( C )

A: Math.ceil (Math.randon() * 9 )

B: Math.floor (Math.random() * 10)

C: Math.floor (Math.random() * 11)

D: Math.ceil (Math.random() * 11)

12. 下列代码执行结果 ( B)

function sum(a, b) {
  return a + b;
}
console.log(sum(1, "2"))
console.log(typeof sum(1, "2"))

A: 3 string

B: 12 string

C: 3 number

D: 12 number

13. 下面代码的执行结果为( D )

var a = 20;
function foo(){
   console.log(a) ; 
   var a = 10 ;
   ++a;
   console.log(a) ;
}
foo();

A: 20 10

B: 10 11

C: 20 11

D: undefined 11

注:var 声明的变量会提到当前作用域的最顶层

14. 如下代码 , 此时box1和box2盒子的宽高分别为多少( A)

A: box1:300*300,box2:200*200

B: box1:200*200 ,box2:300*300

C: box1:200*200,box2:200*200

D: box1:300*300,box2:300*300

<style>
html {
    font-size: 20px;
}
.box1 {
  width: 10em;
  height: 10em;
  background-color: pink;
  font-size: 30px;
}
.box2 {
  width: 10rem;
  height: 10rem;
  background-color: skyblue;
  font-size: 30px;
}
</style>
​
<div class="box1"></div>
<div class="box2"></div>

15. 下列选项中能让元素往右平移400px并且同时实现放大2倍的代码是?( B )

A: transform: translateY(400px) scale(2);

B: transform: translateX(400px) scale(2);

C: transform: translateX(400px); transform: scale(2);

D: transform: translateX(400px); transform: scaleX(2) scaleY(2);

16. 代码的输出结果是 ( C )

function fnMax(a,b,c){
   var max = a > b ? a : b;
   if(c > max){ max = c;}
   alert(max);
}
fnMax(8, 2, 5);

A: 5

B: 2

C: 8

D: 10

17. 下面代码输出什么 ? ( C )⭐

var numbers = [1, 2, 3]
numbers[10] = 11
console.log(numbers)

A : [1, 2, 3, null x 7, 11]

B: [1, 2, 3, 11]

C: [1, 2, 3, empty x 7, 11]

D: SyntaxError

18. 下面代码输出什么? (C)

function addToList(item, list) {
  return list.push(item)
}
var result = addToList('apple', ['banana'])
console.log(result)

A: ['banana', 'apple']

B: ['apple', 'banana']

C: 2

D: true

19. 下列哪种数组的方法不会修改数组本身 ?(A)

A: slice

B: splice

C: sort

C: unshift

注:slice ()截取数组片段,返回一个新的数组 不改变原数组

20. 关于JS中数据类型转换, 下列说法正确的是? (A)

A: console.log(true + 1) 会在控制台打印2

B: console.log(undefined + null) 在控制台打印 0

C: console.log( 1+ "1") 在控制台打印 2

D: console.log(parseInt('12px')) 在控制台打印 12px//直接截掉后面不是数字

21. 请问下列结构中,I'am here 字体会是多大? (D)

<style type="text/css">
  #a {font-size:12px}   
  div p{ font-size:13px }  
  div .c{ font-size:14px }  
  .a .b .c{ font-size:15px } 
  #b{ font-size:16px }  
</style>
​
<body>
  <div id="a" class="a">
    <div id="b" class="b">
      <p id="c" class="c">I’am here</p>  
    </div>
  </div>
</body>

A: 12px

B: 13px

C: 14px

D: 15px

E: 16px

22. 下面代码的输出是什么?( D)

function sayHi() {
    console.log(name);
    console.log(age);//暂时性死区
    var name = "TJH";
    let age = 24;
}
  • A: TJH 和 undefined

  • B: TJH 和 ReferenceError

  • C: ReferenceError 和 24

  • D: undefined 和 ReferenceError

23 下面代码输出是什么?(C)

let a = 666;
let b = new Number(666);
let c = 666;
console.log(a == b);
console.log(a === b);
console.log(b === c);
  • A: true false true

  • B: false false true

  • C: true false false

  • D: false true true

24. 下面代码输出(B)

console.log(typeof typeof 1);
  • A: "number"

  • B: "string"

  • C: "object"

  • D: "undefined"

25. 需要在 html 页面上引用脚本文件myJs.js,下列语句中,正确的是(D)

A: <script href="myJs.js" type="text/javascript" />

B: <script href="myJs.js" type="text/javascript" />

C: <script scr="myJs.js" type="text/javascript"></script>

D: <script src="myJs.js" type="text/javascript"></script>

26. 下列的哪一个表达式将返回假(B)

A: !(3<=1)

B: (4>=4)&&(5<=2)

C: 2<3

D: (2<3)||(3<2)

27. 求以下函数运算的结果 (C)

function fn(){
​
console.log(100)
​
}
console.log(fn())  

A: 报错

B: 100 100

C: 100 undefined

D: undefined undefined

28. 以下代码运行的结果是 (D)⭐

(function(){
    var a = b = 20 //b没有声明 是全局变量
    b = 10
})();
​
console.log(b)
console.log(a)

A : 10 20

B: 20 10

C: 20 报错

D: 10 报错

29. 以下代码运行的结果是(B)

var a = 888
++a
console.log(a++)

A: 888

B: 889

C: 890

D: 891

30. 以下代码输出结果是(C)

let arr = new Array(5)
arr[1] = 1
arr[5] = 2
console.log(arr.length)

A: 2

B: 5

C: 6

D: 报错

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐