为什么JavaScript解析器接受JSON作为函数体?

前端之家收集整理的这篇文章主要介绍了为什么JavaScript解析器接受JSON作为函数体?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有一天,我遇到了一些奇怪的代码
var OrderSupplement = function() {
      oid: null;
      code: "";
      description: "";
      startdate: "";
      enddate: "";
      gender: null;
      cardowner: null;
      Box: null;
      divisor: 0;
      created: null;
      createdBy: "";
};

代码的意图对我来说很清楚:为了创建一个OrderSupplement的实例,尝试定义一个构造函数.@H_403_5@

我对此语法感到困惑.@H_403_5@

编写代码的好友说,它工作得很好 – 虽然显然没有;至少它不是应该的.他实例化了一个新的OrderSupplement实例,oid到非空值,稍后检索.当然,在设置之前检索一个值可能会揭示错误.@H_403_5@

上面的代码效果是:@H_403_5@

var OrderSupplementJson = function() {}

我的问题是:@H_403_5@

为什么上面的代码被接受并且不会抛出任何类型的(语法)错误?@H_403_5@

解决方法

因为oid:定义了一个 label.

它在语法上是正确的,但没有任何有用的东西.这显然是一个错误.@H_403_5@

猜你在找的JavaScript相关文章