`

javascript中作用于和new、this、var关键字

 
阅读更多
偶然看到javascript中有new关键字使用,且在用与不用的时候结果不尽相同


  <script>
  var temp = 1;
function Test(){
    this.temp = 10;//NO.1
    alert(this.temp);//NO.2
    alert(temp;)//NO.3

  }


new Test();//NO.4
Test();//NO.5
  </script>





如上代码在执行的时候会弹出四次,结果是:
10、1、10、10
如果把NO.1处代码改为 temp=10,结果变为:
undefined、10、10、10

下边根据自己理解作如下分析:
首先javascript中也有对象,有自己的属性,默认对象window,当在方法外部使用var 定义变量时相当全局变量,而在方法内部使用var定义的变量相当局部变量。



同时也可以使用new关键字生成对象,并作为当前操作对象 ,内部使用的this关键字只对该对象起作用;


因此上边例子可做如下理解:
通过var定义的temp变量属于全局变量,所以方法Test中NO.3处弹出是全局变量temp的值;
但是this.temp有两种情况,当我们通过NO.5处方式调用的时候,this代表window对象操作的是全局变量中的temp变量,然而我们通过NO.4处方式调用的时候,this指定的是当前对象,this.temp针对当前对象有效。
所以上边程序代码在不同情况会有不同的执行结果。




分享到:
评论

相关推荐

    如何使用Javascript中的this关键字

    在JavaScript中,`this`关键字是一个非常重要的概念,它用于引用函数执行时的上下文对象。`this`的值取决于函数被调用的方式,而不是函数定义的位置。在不同的场景下,`this`的指向会发生变化,这使得它成为...

    详解JavaScript中this关键字的用法_.docx

    在JavaScript中,`this`关键字是一个非常重要的概念,它指的是当前执行上下文中的对象。`this`的值取决于函数的调用方式,而不是定义方式。下面我们将详细探讨在不同场景下`this`的用法。 1. **全局作用域中调用...

    精通JavaScript的this关键字_.docx

    JavaScript中的`this`关键字是一个非常重要的概念,它在编程中起着至关重要的作用,尤其是在对象方法的上下文中。`this`关键字的用法类似于自然语言中的代词,它用来引用当前执行上下文的对象,帮助开发者避免命名...

    js this关键字_面向对象编程.pdf

    总之,理解 `this` 关键字以及如何在 JavaScript 中实现类和继承对于任何前端开发者来说都是非常重要的技能。随着 JavaScript 生态系统的不断发展,这些基础知识将继续成为构建复杂应用的基础。

    js中的this关键字详解

    JavaScript中的`this`关键字是一个非常重要的概念,它用于在函数执行时引用当前上下文的对象。`this`的值取决于函数被调用的方式,这通常分为四种情况:纯粹的函数调用、作为对象方法的调用、作为构造函数调用以及...

    关于js里的this关键字的理解

    对于JavaScript中的`this`关键字,还有更多细节和特殊案例需要理解和注意。例如,`this`在`setTimeout`或者`setInterval`中的行为与普通函数调用类似。另外,严格模式(`'use strict'`)对`this`的指向有更严格的...

    JavaScript中的this关键字使用方法总结

    在JavaScript中,`this`关键字是一个非常重要的概念,它用于引用函数执行时的上下文对象。`this`的值取决于函数被调用的方式,而不是函数的定义位置。以下是关于`this`关键字在JavaScript中四种常见调用方式的详细...

    javascript的this关键字详解

    JavaScript中的`this`关键字是一个非常重要的概念,它用于表示当前执行上下文的对象。根据不同的环境,`this`的指向会有所不同。我们可以将其分为全局环境和函数环境两大类。 ### 全局环境 在全局环境中,`this`...

    JavaScript程序设计-javascript中的this.pdf

    JavaScript中的`this`关键字是一个非常重要的概念,它在不同上下文中具有不同的指向,这使得`this`成为JavaScript灵活但有时也复杂的一部分。`this`的动态绑定特性在编写JavaScript代码时需要特别注意,因为它会影响...

    JavaScript中this关键字用法实例分析

    在JavaScript中,`this`关键字是一个非常重要的概念,它用于引用当前执行上下文的对象。`this`的值在运行时动态确定,根据函数被调用的方式而改变。...了解这些规则对于理解和使用JavaScript中的`this`关键字至关重要。

    详解Javascript 中的this指针

    JavaScript中的`this`具有动态作用域,这意味着`this`的值是在运行时确定的,具体取决于函数的调用上下文。当函数作为对象的方法被调用时,`this`将引用包含该方法的对象;当函数独立调用(即不作为任何对象的方法)...

    JavaScript程序设计-javascript中this的指向问题.pdf

    在JavaScript编程中,`this`关键字是一个至关重要的概念,它表示当前上下文中的对象引用。在不同的场景下,`this`的指向会有所不同,这往往让开发者感到困惑。以下是关于`this`指向问题的详细解释: 一、普通函数...

    Javascript的this详解

    在JavaScript中,`this`的绑定遵循四个主要规则:默认绑定、隐式绑定、显式绑定和new绑定。让我们逐一深入理解这些规则。 1. **默认绑定**:在非严格模式下,如果函数没有明确的上下文,`this`会绑定到全局对象,这...

    JavaScript程序设计javascript中this

    JavaScript中的`this`关键字是程序设计中的一个核心概念,它在不同上下文环境中有着不同的指向,这使得理解和掌握`this`的用法至关重要。在JavaScript中,`this`的值取决于函数调用的方式,而不是定义的方式,这为...

    高手详解javascript中的this指针

    在JavaScript中,`this`关键字是一个至关重要的概念,它在不同上下文中有着不同的指向。`this`在JavaScript中并不像其他静态类型语言(如Java或C++)中的指针那样工作,而是根据函数调用的方式动态确定其值。以下是...

    javascript 中 this 的用法.docx

    ### JavaScript 中 `this` 的用法...在全局作用域和箭头函数中,`this` 的值取决于外层作用域的 `this` 值。掌握 `this` 的用法有助于开发者更好地理解 JavaScript 中的函数调用机制,进而编写出更加健壮和灵活的代码。

    深入浅析JavaScript中的作用域和上下文

    JavaScript中,作用域和上下文是理解...总之,JavaScript的作用域决定了变量的生命周期和可见性,而上下文则关乎`this`关键字的值,指示了代码执行的环境。理解这两者对于编写可维护和高效的JavaScript代码至关重要。

    JavaScript语言中this指向研究 (1).pdf

    JavaScript中的`this`关键字是一个非常重要的概念,它在不同上下文中具有不同的指向,这使得理解和掌握`this`的用法成为JavaScript开发中的关键点。在本文中,我们将深入探讨`this`在全局变量、函数、对象、构造函数...

Global site tag (gtag.js) - Google Analytics