首页 > 解决方案 > javascript中一些奇怪的语法问题

问题描述

我在函数内使用问候变量

function greet3() {
    greeting : 'HELLO GREET 3';
    this.greet = function () {
        console.log(greeting);
    };
}

这种语法不会给出任何错误,而且无论如何我都无法获取“问候”。我想知道这里发生了什么?

标签: javascript

解决方案


  • 首先你必须使用 '=' 而不是 ':' 来分配
  • 其次,您必须使用 this 关键字来引用变量,它允许在本地范围内使用变量或使用 var 这是一个代码

    function greet3() {
        this.greeting = 'HELLO GREET 3';
        this.greet = function () {
            console.log(this.greeting);
        };
    }
    
    var g =  new greet3();
     g.greet();
    

推荐阅读