js css html深入JavaScript

深入JavaScript Day02 - 深入了解JavaScr

2022-01-11  本文已影响0人  望穿秋水小作坊

一、深入了解JavaScript执行过程(从具体代码的角度)

1、为什么我们在JavaScript代码中,能直接使用window、setTimeout、console、math等等对象或函数呢?

// 示例代码
var name = "why"
var num1 = 20
var num2 = 30
var result = num1 + num2

// GO的伪代码(创建时间点,也就是全局执行上下文创建的时候)
var globalObject {
  String:"类",
  Date:"类",
  setTimeout:"函数",
  name: undefined,
  num1:undefined,
  num2:undefined,
  result:undefined
}
image.png

2、观察下面的代码,先 console.log(num1)var num1 = 20,结果输出是什么?为什么?

      var name = "why";
      console.log(num1);
      var num1 = 20;
      var num2 = 30;
      var result = num1 + num2;

3、下面代码,先调用函数,再定义函数,为什么不会报错?

      var name = "why";
      foo();
      function foo() {
        console.log("foo");
      }

4、思考下面代码的输出?为什么会这样?

      var message = "Hello Global";
      function foo() {
        console.log(message);
      }

      function bar() {
        var message = "Hello Bar";
        foo();
      }
      bar();
image.png

5、一些经典题目练习,对上面的知识的巩固

image.png

二、内存管理

1、说说你对编程语言的内存管理的认识?现在高级语言对内存管理主要有哪两大方式?

image.png

2、JavaScript对基本数据类型和复杂数据类型,分配内存的方式有什么不同?

image.png

-【备注】好像没法打印出JavaScript中变量的内存地址。

3、为什么要释放内存?什么是垃圾回收机制?

image.png

4、常见的两种GC算法是哪两种?

image.png image.png
上一篇 下一篇

猜你喜欢

热点阅读