gpt4 book ai didi

javascript - 如何在以下 Javascript 函数中向 Closure 编译器注释我对 "this"的使用?

转载 作者:行者123 更新时间:2023-11-29 10:52:05 24 4
gpt4 key购买 nike

我正在使用以下函数来修改 Javascript 数组的特定实例的行为。如何注释 Closure Compiler 的代码? http://code.google.com/closure/compiler/docs/js-for-compiler.html通过编译器运行代码会产生“JSC_USED_GLOBAL_THIS”错误。

function listify(array) {
array.toString = function() {
return '[' + this.join(', ') + ']';
};
return array;
};

看起来我不能使用@extends 或@constructor 注释。

我不想修改全局数组原型(prototype),因为在页面上使用其他代码时,这会产生意想不到的副作用。另外,看完http://perfectionkills.com/how-ecmascript-5-still-does-not-allow-to-subclass-an-array/ ,我认为我的方法最适合我的用例。问题是我只是不知道如何将它注释给编译器

最佳答案

function listify(array) {

/**
* Returns the roster widget element.
* @this {Array}
* @return {String}
*/
array.toString = function() {
return '[' + this.join(', ') + ']';
};
return array;
};

关于javascript - 如何在以下 Javascript 函数中向 Closure 编译器注释我对 "this"的使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8217615/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com