错题集选择题1
1、【错误点】对象的属性调用
题目:
const a = {}; const b = { key : "b" } const c = { key : "c" } //对象调用属性[属性-->键名],键名为字符串类型 //而此时的b为对象转换为字符串类型(用toSring方法) --> "[object Object]" = 123 //同理 c --> "[object Object]" = 456 //对象中的属性同名覆盖 --> 456 a[b] = 123; a[c] = 456; console.log(a[b]) //456
2、【错误点】函数直接调用
题目:
//函数直接调用,this --> window,参数未传进去,函数默认返回值为undefined function Person(firstName, lastName) { this.firstName = firstName; this.lastName = lastName; } const lydia = new Person("Lydia", "Hallie"); const sarah = Person("Sarah", "Smith"); console.log(lydia); //Person {firstName: "Lydia", lastName: "Hallie"} console.log(sarah); //undefined
3、【错误点】对 == 的判断
题目:
// == 如果两边是引用数据类型,则判断地址是否相同,不同则false function checkAge(data) { if (data === { age: 18 }) { console.log("You are an adult!"); } else if (data == { age: 18 }) { console.log("You are still an adult."); } else { console.log(`Hmm.. You don't have an age I guess`); } } checkAge({ age: 18 }); //`Hmm.. You don't have an age I guess`
4、【错误点】严格模式(官方文档):https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Strict_mode
题目:
//严格模式下无法再意外创建全局变量,严格模式中意外创建全局变量被抛出错误替代(ReferenceError) //ReferenceError (引用错误),对象代表当一个不存在的变量被引用时发生的错误 //TypeError (类型错误),对象用来表示值的类型非预期类型时发生的错误 //当传入函数的操作数或参数的类型并非操作符或所预期的类型时,将抛出一个类型错误 function getAge() { "use strict";//严格模式 age = 21; console.log(age); } getAge(); // ReferenceError
5、【错误点】eval()函数
题目:
//eval()函数计算JavaScript字符串,并把它作为脚本代码执行 //如果参数是一个表达式,evel()函数将执行表达式。如果参数是JavaScript语句,evel()将执行JavaScript语句。 const sum = eval("10*10+5"); //Number()-->105
6、【错误点】const声明常量的本质 (参考文档):https://www.cnblogs.com/minigrasshopper/p/9144223.html
题目:
//JS使用const声明常量的本质:const实际保证的并不是变量的值不能改动,而是变量指向的那个内存地址不得改动, //对于符合类型的数据(主要对象跟数组),变量指向的内存地址,保存的只是一个指针, //const只能保证这个指针是固定的,至于它指向的数据结构是不是可变的,就完全不能控制了。 const obj = { a: "one", b: "two", a: "three" }; //虽然地址不能改变,但是对象本身是可变的,所以依然可以为其添加新属性 //同名属性,值会覆盖 console.log(obj); //{ a: "three", b: "two" }
7、【错误点】全局执行上下文 (参考文档):https://www.cnblogs.com/forcheng/p/12960972.html
题目:
//在全局环境(全局执行上下文)中(在任何函数体外部的代码),this始终指向全局对象 //JavaScript全局执行上下文为你创建了两个东西:全局对象和this关键字(正确)
8、【错误点】数据类型 (官方文档):https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Data_structures
题目:
//基本数据类型(原始类型):number、string、boolean、undefined、null、Symbol(ES6新增一种数据类型)[最新定义有7种还有BigInt] //引用类型:object、function //js的基本数据类型有几个?(D) //A.3 B.4 C.5 D.6

浙公网安备 33010602011771号