155个JavaScript基础问题(6-10)

简介: 155个JavaScript基础问题(6-10)

6. 输出是什么?

let c = { greeting: 'Hey!' }
let d
d = c
c.greeting = 'Hello'
console.log(d.greeting)

答:输出是 'Hello',因为在JS中对象是一种引用类型,d和c指向的是同一片内存区域,所以对c进行修改,d指向的内容也发生了改变。

7. 输出是什么?

let a = 3
let b = new Number(3)
let c = 3
console.log(a == b)
console.log(a === b)
console.log(b === c)

答:输出是 true、false、false。之所以是这样,当我们是用==符号时,系统会检测两边是否有相同的值,有时候还会对值进行转换的比较,但是如果我们使用===符号时,不仅要求两边要有相同的值,还要求有相同的类型,new Number出来的是一种对象,其身上不仅仅有值,还有一堆额外的功能。

8. 输出是什么?

class Chameleon {
  static colorChange(newColor) {
    this.newColor = newColor
    return this.newColor
  }
  constructor({ newColor = 'green' } = {}) {
    this.newColor = newColor
  }
}
const freddie = new Chameleon({ newColor: 'purple' })
freddie.colorChange('orange')
复制代码

答:输出是TypeError,之所以是错误,原因在于Chameleon是一个类,colorChange是类中的静态方法,类中的静态方法只能被构造器使用,不能被实例进行调用。

9. 输出是什么?

let greeting
greetign = {} // Typo!
console.log(greetign)
复制代码

答:输出的是{},表面上看greetign存在拼写错误,应该报错才对,但是这是在全局作用域下的,实际上是进行了赋值的,所以打印出的是{}.

10. 当我们这么做会发生什么?

function bark() {
  console.log('Woof!')
}
bark.animal = 'dog'
复制代码

答:正常运行!之所以会这样,是因为JS中的函数也是一类特殊的对象,所以也可以通过点的形式添加属性。

相关文章
|
JavaScript
JS基础之解构赋值
解构赋值 在js中,我们经常会将对象或者数组里面的一部分数据作为参数传递给函数,如果我们使用传统的.方法会很麻烦。
|
移动开发 JavaScript 前端开发
JavaScript基础知识梳理-上
对JavaScript基础知识梳理-上
237 31
JavaScript基础知识梳理-上
|
存储 JavaScript 前端开发
JavaScript基础(一篇入门)
JavaScript基础(一篇入门)
225 0
JavaScript基础(一篇入门)
|
JavaScript 前端开发
2021琴理工作室JS基础教学(三)
当网页被加载的时候,浏览器就会创建文档对象模型,也就是dom 而dom可以看做一颗树
84 3
2021琴理工作室JS基础教学(三)
|
JavaScript 前端开发
JavaScript 入门基础 - 运算符(三)
文章目录 JavaScript 入门基础 - 运算符(三) 1.什么是运算符 2.表达式和返回值 3.算术运算符概述 4. 赋值运算符 5.递增和递减运算符 5.1 递增和递减运算符概述 5.2 递增运算符 5.2.1 前置递增运算符 5.2.2 后置递增运算符 5.2.3 后置和前置运算符的区别 6. 比较运算符 7. 逻辑运算符 7.1 逻辑运算符概述 7.2 逻辑与 7.3 逻辑或 7.4
159 0
JavaScript 入门基础 - 运算符(三)
|
存储 JSON JavaScript
JavaScript 入门基础 - 变量 / 数据类型(二)
JavaScript 入门基础 - 变量 / 数据类型(二)
110 0
JavaScript 入门基础 - 变量 / 数据类型(二)
|
JavaScript 前端开发 物联网
JavaScript 入门基础 / 概念介绍(一)
JavaScript 入门基础 / 概念介绍(一)
145 0
JavaScript 入门基础 / 概念介绍(一)
|
JavaScript 前端开发 Java
JavaScript的基础使用
JavaScript的基础 一、javascript简介 JavaScript简称js,最初由网景(现在的Mozilla)公司创建,由于商标冲突原因,其标准版本命名为ECMAScript,但是一般人们还是叫JavaScript,只在谈标准的时候说到ECMAScript这个名字。值得注意的是JavaScript与java没有任何关系,就像雷峰塔(神话中镇压白娘子的塔)和雷锋。此外js(JavaScript)和jsp(java servlet pages)也没有关系。   js的工作分为两部分,一部分属于js语言本身的特性,而另一部需要依靠宿主环境(web浏览器)才能完成。 二、javascri
JavaScript的基础使用
|
JavaScript 前端开发
vue js文字跑马灯基础版本
提供两种解决思路
293 1
|
JavaScript 前端开发
原生js制作选项卡详解,适合无基础的人学习
原生js制作选项卡详解,适合无基础的人学习
144 0
原生js制作选项卡详解,适合无基础的人学习