Показать сообщение отдельно
  #12 (permalink)  
Старый 05.08.2011, 21:49
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от dmitriymar
На уровне языка реализовано наследование на прототипах.
ключевое слово class вообще ничего не говорит о наследовании, просто в JS нет абстрактной прослойки с ключевым словом class, и оно не используется, хотя и присутствует в спецификации [[Class]]. Вот как это будет в ES7 (Strawman):

<script src="http://traceur-compiler.googlecode.com/svn/branches/v0.10/src/traceur.js" type="text/javascript"></script>
<script src="http://traceur-compiler.googlecode.com/svn/branches/v0.10/src/bootstrap.js" type="text/javascript"></script>

<script type="text/traceur">
class Foo {
    new(message) {
        this.message = message;
    }
    method() {
        let element = document.querySelector('body');
        element.innerHTML = this.message;
    }
};

let foo = new Foo('Hello, world!');
foo.method();  
</script>


PS: для запуска примера, нужно чуть подождать т.к. парсится долго или что-то сломалось у них ((

Последний раз редактировалось monolithed, 05.08.2011 в 22:08.
Ответить с цитированием