pnpquest, на классах писать гораздо удобнее, чем на прототипах. Там и наследование нормальное, приватные данные, super и многое другое. Да и возможностей больше. Это конечно всё на прототипах тоже можно, но жутко неудобно.
В общем, когда модули/плагины писать будешь - поймёшь. :) Вот как я реализовываю приватные функции и переменные на прототипах: !function(window) { var Private = { foo: 'bar', test: function() { return Private.foo + '!!!'; } }; window.MyClass = function() { this.fooBar = Private.test.call(this); }; }(window); И как это можно написать на классах: Class MyClass { private var foo:String = 'bar'; private function test():void { return this.foo; } public function MyClass() { this.fooBar = this.test(); } } P.S.: синтаксис классов на JS точно не знаю какой, так как не писал ещё, поэтому пример из AS3. |
Цитата:
(function() { var Private = { foo: 'bar', test: function() { return Private.foo + '!!!'; } }; MyClass = function() { fooBar = Private.test() }; }() разницы особой со вторым примером я не вижу, и что ты хотел этим доакзать, непонятно |
Цитата:
|
Нулевые проснулись, после того как я тут ткнул, в свое время, ынтырпрайзовых мартышек рожей в говнецо, они бояться со мной спорить, молча минусики ставят, у-тю-тю.
|
Пользователь pnpquest забанен, за то что он foo
Народ, который тут сидит. Есть у нас на форуме такой товарищ под кодовым именем "foo". Этот товарищ отличается низким уровнем знания JS, неоправданно высоким ЧСВ и при этом абсолютной неспособностью к адекватному общению, проще говоря -- неадекват. Как следствие, он является персоной нон грата на форуме. Однако, в силу своей неадекватности, он регулярно пытается сюда зачем-то влезть, каждый раз ведя себя неадекватно, за что и бывает регулярно забанен. Проблема в том, что модераторов на все темы не хватает, и иногда лаг между его появлением и неизбежным баном бывает достаточно большим. Поэтому, я прошу вас сообщать о появлении неадекватных персонажей вот в эту тему с припиской "неадекват", особенно если ник персонажа похож на что-то из этого списка (это все ники foo за всё время).
|
pnpquest, видимо ты не понимаешь всю суть. Вся суть в контексте. Private нужен для того, чтобы ненужные методы не попали наружу.
К примеру: var a = new MyClass(); a.test; //undefined!!! test должен быть доступен только внутри, причём, с нужным контекстом. Поэтому мы вызываем методы Private через apply/call/bind, иначе там будет другой контекст. А то что ты написал - чушь, ещё зачем-то переменную в глобал определил. Складывается впечатление, что ты вообще не понимаешь для чего нужны классы, да и ничего никогда на них не писал. Просто услышал модное слово "прототипы" и говоришь тут во все темы о них, хотя на деле даже не понимаешь что это. Как говорится, на словах ты Лев Толстой, а на деле - |
trikadin, ещё одного отправил в баню.
|
И ещё одного. А он не перестаёт удивлять "орининальностью" своих никнеймов. :haha:
|
Кто знает интерфейс Serial ATA для hdd, хуже чем Serial 3, типо Serial ATA это более старый?
|
Я так понял что они все Serial ATA, а цифра - скорострельность
https://ru.wikipedia.org/wiki/SATA |
Часовой пояс GMT +3, время: 12:20. |