javascript基础知识点

javascript基础知识点
 最后更新于 2024年10月02日 23:14:15

作用域链

内部环境可以通过作用域链访问外部环境的属性和方法; 但是,外部环境不能访问内部环境的属性和方法。只能通过定义函数来延长作用域链条

闭包

能够读取其它函数内部变量的函数。 因为在JavaScript中,只有函数内部的子函数才能放访问局部变量;因此可以把闭包简单的理解为“定义在一个函数内部的函数”。最大的用处是:可以读取函数内部变量;读取的变量始终保存在内存中

原型

所有的函数都有一个特殊的属性prototype(原型),它是一个指针,指向的是一个对象(原型对象),原型对象中的方法和属性都可以被函数的实例所共享。 函数实例是指,以函数作为构造函数创建的对象,这些对象实例都可以共享构造函数的原型的方法

var Person = function () {
  this.age = 27;
  this.sex = '';
  this.address = '安徽省 宣城市';

  this.setAdr = function(adr) {
    this.address = adr;
  }
}

var my = new Person();

console.log(my.address); // 安徽省 宣城市
console.log(Person.address); // undefined

my.setAdr('安徽省 合肥市');

console.log(my.address); // 安徽省 合肥市

原型链

用于查找引用对象的属性,查找属性会沿着原型链依次查找,直到搜索到该属性停止查询操作,并执行对应的操作,否则会沿着原型链搜索到结尾