Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 24.03.2013, 17:27
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

class Animal {
    animal = 'animal';

    say() {
        alert('i animal')
    }
}


class Cat extends Animal {
    cat = 'cat';

    say() {
        super.say();
        alert('and i cat')
    }
}

new Cat().say();



а получается так

var __extends = this.__extends || function (d, b) {
    function __() { this.constructor = d; }
    __.prototype = b.prototype;
    d.prototype = new __();
};
var Animal = (function () {
    function Animal() {
        this.animal = 'animal';
    }
    Animal.prototype.say = function () {
        alert('i animal');
    };
    return Animal;
})();
var Cat = (function (_super) {
    __extends(Cat, _super);
    function Cat() {
        _super.apply(this, arguments);

        this.cat = 'cat';
    }
    Cat.prototype.say = function () {
        _super.prototype.say.call(this);
        alert('and i cat');
    };
    return Cat;
})(Animal);
new Cat().say();
//@ sourceMappingURL=td.js.map
Ответить с цитированием
  #22 (permalink)  
Старый 24.03.2013, 17:42
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от megaupload Посмотреть сообщение
твой брат родил или сестра)?
У брата сынишка родился
__________________
kobezzza
code monkey
Ответить с цитированием
  #23 (permalink)  
Старый 24.03.2013, 17:44
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

охуенно, а сколько вам лет )?
Ответить с цитированием
  #24 (permalink)  
Старый 24.03.2013, 17:45
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от megaupload Посмотреть сообщение
class Animal {
    animal = 'animal';

    say() {
        alert('i animal')
    }
}


class Cat extends Animal {
    cat = 'cat';

    say() {
        super.say();
        alert('and i cat')
    }
}

new Cat().say();



а получается так

var __extends = this.__extends || function (d, b) {
    function __() { this.constructor = d; }
    __.prototype = b.prototype;
    d.prototype = new __();
};
var Animal = (function () {
    function Animal() {
        this.animal = 'animal';
    }
    Animal.prototype.say = function () {
        alert('i animal');
    };
    return Animal;
})();
var Cat = (function (_super) {
    __extends(Cat, _super);
    function Cat() {
        _super.apply(this, arguments);

        this.cat = 'cat';
    }
    Cat.prototype.say = function () {
        _super.prototype.say.call(this);
        alert('and i cat');
    };
    return Cat;
})(Animal);
new Cat().say();
//@ sourceMappingURL=td.js.map
TypeScript прикольная штука
__________________
kobezzza
code monkey
Ответить с цитированием
  #25 (permalink)  
Старый 24.03.2013, 17:45
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от megaupload Посмотреть сообщение
охуенно, а сколько вам лет )?
Мне 23, а брату 25)
__________________
kobezzza
code monkey
Ответить с цитированием
  #26 (permalink)  
Старый 24.03.2013, 18:05
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

Сообщение от kobezzza
TypeScript прикольная штука
а что лучше ECMA 6 транслируемый в ECMA3 или Typescript транслируемый в ECMA3)?
Ответить с цитированием
  #27 (permalink)  
Старый 24.03.2013, 18:11
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от megaupload Посмотреть сообщение
а что лучше ECMA 6 транслируемый в ECMA3 или Typescript транслируемый в ECMA3)?
Лучше ECMA6 работающий нативно во всех современных браузерах) Ну а так мне наверно трудно сказать, т.к. я этих зверей ещё на реальных проектах не пробовал, хотя TypeScript похож C# и ActionScript3 и лично для меня это плюс, т.к. я работал с этими двумя языками и мне в общем они оч нравились.

Кстати поиграйся с Coffee, он ппц сахарный, куда более сахарнее, чем TypeScript. Рекомендую прочитать Марк Бейтс Coffee Script.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 24.03.2013 в 18:15.
Ответить с цитированием
  #28 (permalink)  
Старый 24.03.2013, 18:18
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

меня бесит синтаксис кофя... он пиздец какой неочевидный это факт.


ну как я понял typescript его суть именно в проверке типов перед компиляцией и все, а строгая типизация позволяет движкам компилить более быстрый байткод... а в ECMA6 такое есть?

functionm  test (lol:string,  qq:Cat){

}
Ответить с цитированием
  #29 (permalink)  
Старый 24.03.2013, 18:20
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от megaupload Посмотреть сообщение
меня бесит синтаксис кофя... он пиздец какой неочевидный это факт.
Это как посмотреть. Я вот начал присматриваться у Питону и Кофе сразу стал становится приятным По началу меня он тоже бесил.

Цитата:
а в ECMA6 такое есть?
В экме такое давно есть, тот же ActionScript3 тоже реализует синтаксис ECMA и там есть и возможность указывания типов (не обязательное) и классы и неймспейсы (пакеты, как в Java). Хотя наверно ECMAScript дробится на разные ветки, т.к. реализация JS идёт немного по другому.

В новом стандарте JS вроде как должны появится способы проверки входных параметров функций, но не более того.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 24.03.2013 в 18:26.
Ответить с цитированием
  #30 (permalink)  
Старый 24.03.2013, 18:24
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

var Animal = function () {
    this.animal = 'animal';
};
Animal.prototype.say = function () {
    alert('i animal');
};

var Cat = function () {
        Animal.apply(this, arguments);

        this.cat = 'cat';
}
Cat.prototype = Object.create(Animal.prototype, {
    constructor: {value: Cat, writable: true, enumerable: false, configurable: true}
});
Cat.prototype.say = function () {
    Animal.prototype.say.call(this);
    alert('and i cat');
};

new Cat().say();


То есть на сегодняшний день этот код должен примерно так выглядеть?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Как использовать sprit'ы? Hekumok Общие вопросы Javascript 17 10.08.2012 11:24
Ползунок как на YouTube и условие. dailclever Элементы интерфейса 1 23.07.2012 19:51
Как различить методы и свойства? возжаждавший Элементы интерфейса 59 12.04.2010 08:33
ООП: как создавать наследника от встроенных объектов? Langalier Общие вопросы Javascript 17 02.02.2009 17:07