Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Javascript - классы, они есть или их нету в Javascript? (https://javascript.ru/forum/css-html/15506-javascript-klassy-oni-est-ili-ikh-netu-v-javascript.html)

Golovastik 02.03.2011 02:44

Javascript - классы, они есть или их нету в Javascript?
 
Скажите, в Джаваскрипт есть классы как в пхп например?
Я так толкового ответа порывшись по интернету не нашёл.

Gvozd 02.03.2011 02:58

нету

monolithed 02.03.2011 09:13

Цитата:

Сообщение от Golovastik
Я так толкового ответа порывшись по интернету не нашёл.

костылей море, взять хотя бы JS.Class, да и не особо они нужны пока, в клиентском языке.
Сравните:
//ActionScript:
package {
    import flash.display.Sprite;
    public class Foo {
        public var bar:*;
        public function Foo(str) {
             this.bar = str;
        }
     }
}

var obj:String = new Foo('Hello World!');  
trace(obj.bar);

//JavaScript:
function Foo(arg) {
    this.bar = arg;
}

var obj = new Foo('Hello World!'); 
alert(obj.bar);


еще нужны классы в JavaScript? :)

Golovastik 02.03.2011 16:38

На пхп класс описуется так:
<?php
class A{
public function t(){
print("Привет мир!");
}
}
$t = new A();
$t->t();
?>


Как такое же самое только на JAVASCRIPT?

Matre 02.03.2011 16:50

В JavaScript классов нет. Некоторые дебилы говорят, что есть, и срут всем в голову своими говностатьями "наследование классов в javascript", не верьте им.

monolithed 02.03.2011 19:35

Цитата:

Сообщение от Golovastik
Как такое же самое только на JAVASCRIPT?

function Foo() {}

Foo.prototype.bar = function() {
    alert(true);
};

var obj = new Foo();
obj.bar();

рони 02.03.2011 20:55

На всякий случай ...
Цитата:

Сообщение от monolithed
alert(return true);


monolithed 02.03.2011 21:11

[quote=рони]На всякий случай ...
Цитата:

Сообщение от monolithed
Сообщение от monolithed
alert(return true);

изначально было так:
function Foo() {}

Foo.prototype.bar = function() {
    return true;
};

var obj = new Foo();
alert(obj.bar());

но из-за моей невнимательности - получилось как обычно :D

Riim 03.03.2011 10:02

Цитата:

Сообщение от Matre
В JavaScript классов нет. Некоторые дебилы говорят, что есть, и срут всем в голову своими говностатьями "наследование классов в javascript", не верьте им.

что такое "класс" для тебя? Если в каком-то ЯП будут идеальные классы со всеми тонкостями, но объявляться будут как-то хитро, без служебного слова class, значит классов нет? Для тебя все упирается только лишь в наличие служебного слова?

Matre 03.03.2011 11:48

Цитата:

Для тебя все упирается только лишь в наличие служебного слова?
Вообще-то да.


Часовой пояс GMT +3, время: 10:46.