Это может быть простой вопрос, но я не мог найти ничего об этом в google.
Очевидно, что это невозможно в чистом javascript, но позвольте сказать, что я создаю какой-то контейнерный класс в V8 и передаю этот класс обратно в javascript. Могу ли я реализовать перегрузку оператора в V8, чтобы можно было получить доступ к элементам массива в JS, например foo[i]
, или я застрял в foo.at(i)
или подобных методов?
Благодарю!
Вы уже можете сделать это без перегрузки; вы можете использовать запись в виде скобок для доступа к своим свойствам объекта:
function Foo() {
for (var i=0; i<arguments.length; i++)
this[i] = arguments[i]
}
var foo = new Foo(1,2,3)
foo[1] //=> 2