在C语言中,如果编译器希望提供实现定义的标识符(语言扩展,内在函数,伪函数和伪宏,基本上不是语言标准所保留的关键字,但也不是常规函数的任何内容),则约定为为名称加上下划线;可以理解,出于正常目的,代码不应使用此类名称。
JavaScript中是否有等效的约定?或者,如果JavaScript编译器希望出于特殊目的提供实现定义的标识符,并避免与代码中通常使用的标识符冲突,那么这样做的最佳方法是什么?
最佳答案
如果您查看ECMAScript标准,则该语言本身使用的方法名称应遵循以下格式:[[MethodName]]
但是,根据您的操作,这并不完全安全。无法保证将来的ECMA Script版本不会使用您使用的任何名称。此外,除非您使用ECMA5对象属性,否则添加的任何属性都是可枚举的。
根据您尝试添加它们的位置,这可能是一个小问题,也可能是一个节目停播。
如果您能够分享有关您要完成的任务的更多详细信息,我们可能会更好地提供更多帮助。例如,为新属性命名空间可能是一个更好的解决方案。