Цитата:
Цитата:
var test = {};
test[0] = "a";
test[1] = "bb";
test[2] = "ccc";
test.length = 2;
alert( Array.prototype.slice.call( test, 0 ) );
|
Если уж извращаться - то можно эмулировать геттером, они вроде в ие 9+ поддерживаются уже. Примерно так, если не думать об оптимизации):
var test = {
get length(){
var j = 0;
for(var i in this)if(!isNaN(i) && i > j) j = +i ;
return j+1
}
};
test[0] = "a";
test[1] = "bb";
test[25] = "ccc";
alert(test.length)
alert( Array.prototype.slice.call( test, 0 ) );
|
Aetae,
Только функция должна быть чуть посложнее - нужно отсекать дробные числа, слишком большие числа, и много чего еще:
var test = {
get length(){
var j = 0;
for(var i in this)if(!isNaN(i) && i > j) j = +i ;
return j+1
}
};
test[0] = "a";
test[1] = "bb";
test[1e100] = "ccc";
var test2 = [];
test2[0] = "a";
test2[1] = "bb";
test2[1e100] = "ccc";
alert( test.length + " | " + test2.length );
|
недавно плагин жукверевский к Zepto подключал. Ой намучался :)
по теме: я вижу только такое решение
var box = {
method: function() {
alert( 1 )
}
};
var arr = [];
arr.method = box.method;
arr.method();
В данном случае просто устанавливаются ссылки на функцию. Т.е. функция не создается заново каждый раз. p.s.: тред особо не читал |
Цитата:
могу еще вариант предложить с аппедиксом :D
var arr = [];
arr.some = {}; // тут твой мега объект, в нем ссылка на родителя (arr)
но это все через ж*пу и проще сделать нормальный объект |
nerv_, видимо больше ничего не остается. Тут чел то же самое предлагает: https://github.com/madrobby/zepto/pu...mment-15571557
Цитата:
|
Цитата:
<script>
$el = $('.el');
</script>
<script src="plugin.js"></script>
<script>
$el.plugin() // без прототипа - беда!
</script>
|
Цитата:
я не понял зачем тебе тема с прототипом, т.к. плагины для зепто пишутся также как и для жуквери:
$.fn.some = function() {
почему намучался. зепто не полностью совместим с жуквери. В частности, когда я подключал плагин-шаблонизатор к зепто, мне пришлось лезть в код этого плагина - раз, два - дописывать для зепто и подключать плагин, эмулирующий метод жуквери, кот. нет в зепто |
Нужно пофиксить коллекции zepto и дописать $.prototype = $.fn. Тогда останутся только проблемы отсутствия методов, которые легко решить и проблема расширенных селекторов, от которых народ нужно отучать.
Хотя есть и другие проблемы.. Тот же data(), который полноценен только через модуль. Есть и другие проблемы.. Тут циклическая зависимость - зепто не используют в качестве замены jQuery => его особенности не принимают во внимание => зепто не используют... |
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
|
| Часовой пояс GMT +3, время: 00:59. |