javascript声明变量问题

javascript声明变量问题,javascript,Javascript,我正在做这样的事情 Client.Selectors = { var cfg = null; Init:function(config){ ... cfg = config; ... }, Close:function(){ } }; 在chrome的调试器上,我得到了这个错误: Uncaught SyntaxError: Unexpected identifier 我不知道为什么你在这里有问题: var cf

我正在做这样的事情

Client.Selectors = {
    var cfg = null;
    Init:function(config){
       ...
       cfg = config;
       ...
    },
    Close:function(){
    }
};
在chrome的调试器上,我得到了这个错误:

Uncaught SyntaxError: Unexpected identifier
我不知道为什么你在这里有问题:

var cfg = null;
Client.Selectors = {
    Init:function(config){
       ...
       cfg = config;
       ...
    },
    Close:function(){
    }
};
var cfg = null;
应该是:

cfg : null,
因为您使用的是对象文字符号。所以
=
改为
更改为

Client.Selectors = {
    cfg : null,
    Init:function(config){
       this.cfg = config;
    },
    Close:function(){
    }
};
了解更多信息:

    • 您在这里遇到了问题:

      var cfg = null;
      
      应该是:

      cfg : null,
      
      因为您使用的是对象文字符号。所以
      =
      改为
      更改为

      Client.Selectors = {
          cfg : null,
          Init:function(config){
             this.cfg = config;
          },
          Close:function(){
          }
      };
      
      了解更多信息:


      您使用对象文字符号声明选择器,因此语法是

      some = {
          identifier:value,
          id2:function() {}
      }
      
      所有的酒店都可以从外面进入。。。。您可能需要考虑使用构造函数来封装CFG

      some = function() {
         var privateVar = "something";
      
         return {
            init: function() {
               alert(privateVar);
            }
         }
      
      }
      

      您使用对象文字符号声明选择器,因此语法是

      some = {
          identifier:value,
          id2:function() {}
      }
      
      所有的酒店都可以从外面进入。。。。您可能需要考虑使用构造函数来封装CFG

      some = function() {
         var privateVar = "something";
      
         return {
            init: function() {
               alert(privateVar);
            }
         }
      
      }
      

      注意符号,在javascript中,大写的变量是构造函数。如果您没有声明构造函数,那么应该将camelCase与小写字母一起使用。这只是一种约定,而不是语言特性。请看@Phil,这就是我所说的:),我没有意识到这听起来像是一种语言功能。注意符号,在javascript中,大写的变量是一个构造函数。如果您没有声明构造函数,那么应该将camelCase与小写字母一起使用。这只是一种约定,而不是语言特性。看@Phil这就是我所说的:),我没意识到这听起来像是一个语言特征。