TypeScript part2 [転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2015/04/30(木) 18:37:29.98ID:ynMflk1l
http://www.typescriptlang.org/

TypeScript lets you write JavaScript the way you really want to.
TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
Any browser. Any host. Any OS. Open Source.

前スレ
http://peace.2ch.net/test/read.cgi/tech/1349187527/
2015/05/01(金) 11:16:24.11ID:O5IrbREb
https://twitter.com/ironshay/status/593855606747860992

Anders, father of C#, and Misko, father of angular,
on the same stage at Build2015.
3デフォルトの名無しさん
垢版 |
2015/05/01(金) 12:23:58.69ID:Cd44J9+J
>>2
MSとGoogle夢の共演
2015/05/01(金) 16:28:43.35ID:Cd44J9+J
Announcing TypeScript 1.5 Beta
http://blogs.msdn.com/b/typescript/archive/2015/04/30/announcing-typescript-1-5-beta.aspx

しかし、いきなり大量のコンパイルエラーが…
まだ更新しない方が良さそう
2015/05/03(日) 17:06:42.35ID:rBxa49N8
インストールしたら1.5 Betaが入りました。
$ tsc sample.tsでコンパイルしたjavascriptファイルを$ node sample.jsで実行すると
__.prototype = b.prototype;の箇所でエラーになるんですが
typescriptの書き方でおかしいところを教えてください

module M {
export interface aInterface {
f1(): void;
}

export interface bInterface {
f2(): void;
}

class A extends B implements aInterface {
f1() {
console.log(1);
}
}

class B implements bInterface {
f2() {
console.log(2);
}
}
}
2015/05/03(日) 17:38:50.79ID:RegehUyj
>>5
BをAより前に書く
2015/05/03(日) 18:27:42.73ID:H+7a6WF5
>>6
できました
ありがとうございます
2015/05/12(火) 21:39:01.53ID:bsrem9uN
typescriptの勉強の為、型推論とanyを使わない書き方を知りたいのですが
コンパイルすると error TS2339: Property 'classList' does not exist on type 'EventTarget'.
ってエラーが出ます。
(1)と(2)の行を型指定しなければエラーが出ないのですが、どのような型を指定したらエラーがでないのでしょうか?

class A {
eventFunc(e: MouseEvent) { // (1)
var target:EventTarget = e.target; // (2)
target.classList.add('red');
}

f() {
window.addEventListener('click', this.eventFunc, false);
}
}
2015/05/13(水) 08:53:02.33ID:8FgeUemt
(2)をvar target = <Element>e.target;でいいんじゃないかな
DOMの仕様でtargetがElementではないケースがあるのかどうか知らないけど、少なくとも自分で扱う範囲なら問題ないでしょ
2015/05/13(水) 10:56:22.23ID:2k7sC9bw
>>8
classListだから
var target = <HTMLElement>e.target;
または
var target: HTMLElement = e.target;
じゃないかな?
分からない場合はlib.d.tsを見ればいいよ
2015/05/13(水) 17:58:04.11ID:EXojY7d0
最初の頃は律儀に型指定してたけど面倒くさいからもうやってない
コンパイル速度が上がるわけでもない。
2015/05/14(木) 11:17:19.81ID:gHUa6+Se
tsc --noImplicitAnyでかつ明示的にanyを使ってなくてエラーがでなければ
型安全が保たれてるから何も毎回型指定する必要はないよ

ただjquery.d.tsとかanyだらけなんで実行しないとエラーが出ない事とかよくある
単純にjQuery使う程度ならJavaScriptのままでいいとは思う
2015/06/04(木) 21:53:08.26ID:jTi6Q4y/
やっぱ堅い仕様で書いてるとtscでインライン化して欲しくなっちゃうなぁ
2015/06/05(金) 11:52:22.54ID:QvLzrgmO
>>13
インライン化し始めるとjsのソースがグチャグチャになりそうだ
get,setはあるんだからそれでいいんじゃないの?
2015/06/06(土) 09:46:32.31ID:be84NOOA
>>14
うちの場合JavaScriptはただの実行ファイル扱いだからね
デバッグはソースマップなりインライン化の無効なりできればいいんじゃないかな
2015/06/07(日) 13:32:40.51ID:yxti539q
1.5がなかなか正式リリースされないのはなんでぞ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況