TypeScript part3 ..
[2ch|▼Menu]
44:デフォルトの名無しさん
18/08/06 14:23:37.61 ODvV2Pda.net
こういう頭でっかちは社会に出てから潰されてニートになったりするからね。勉強会に参加して早めに鼻っ柱を折る経験をしといたほうが良い

45:デフォルトの名無しさん
18/08/09 12:54:45.59 GPWcQL0I.net
UWPアプリ開発でTypescript+Reactを使っているのは自分含めて数人だろうな。

46:デフォルトの名無しさん
18/08/09 20:30:43.93 WZIXbM0Y.net
アプリなら素直にC#で作れよ
jsプププ

47:デフォルトの名無しさん
18/08/11 06:17:13.28 EQiEGCLN.net
ブラウザのアドオンからネイティブアプリも含めてTypeScriptだけで大抵の事は出来る

48:デフォルトの名無しさん
18/08/11 07:43:59.64 reBAGRvU.net
>>44
詳しく。reactと相性良いよね

49:デフォルトの名無しさん
18/08/11 11:07:17.59 w1WGostD.net
TypeScriptできる→俺凄い
ネトウヨ的DQN思考法
素直にC#使えばぁ〜

50:デフォルトの名無しさん
18/08/11 16:29:42.87 i5Ehw0eD.net
c#でwebのフロントエンド書けないよね

51:デフォルトの名無しさん
18/08/11 17:07:22.55 OwpN8/EL.net
>>47
>詳しく。reactと相性良いよね
詳しくも何も、Windows10はjs+htmlでデスクトップアプリが開発できるから、それでソフトを作っているだけ。
ただUIを全部作る必要がある。

52:デフォルトの名無しさん
18/08/11 17:58:24.09 HdyPScyr.net
>>49
最近Blazorとかいう強引な技術が出てきてるぞ

53:デフォルトの名無しさん
18/08/12 17:10:22.85 DMIMHrCZ.net
TypeScriptは折角ならC#と継承とかの書き方も統一して欲しかったなぁ

54:デフォルトの名無しさん
18/08/12 17:20:17.72 q2AjPHaY.net
Javascriptのフレームワークででかい顔w
Javaプログラマーからしたらお笑い種ですよ
ヴァカっぽくて笑える

55:デフォルトの名無しさん
18/08/25 06:30:24.41 xUwKoZHr.net
JavaScriptやらないでいきなりTypeScriptから勉強するのってアリ?
でもjQuery覚えようとしたらJSも勉強しなきゃならなんのよね

56:デフォルトの名無しさん
18/08/25 07:21:26.46 8VsPVu5p.net
つうか型システム以外はJavaScriptなんだから、TypeScriptを覚えることは普通にJavaScriptを覚えることにほぼ等しい

57:デフォルトの名無しさん
18/08/25 07:24:42.29 8VsPVu5p.net
特に最新のJavaScriptに変換すると、単純に型指定だけが無くなったものが出力されることが多くなったな

58:デフォルトの名無しさん
18/08/25 09:38:13.06 ROrdHzXZ.net
むしろtsから入った方がいいくらいだ
生のjsは危険

59:デフォルトの名無しさん
18/08/25 12:19:44.10 Buh9wu1g.net
俺もTypeScriptから学んだ口だ。
ライブラリの使い方とかvscodeが教えてくれるようになるからむしろjsを巣のまま学ぶより調子が良い

60:デフォルトの名無しさん
18/08/25 12:22:48.10 t7aLMQyu.net
ビルドするのめんどくさい
TypeScriptのままレスポンスを返して動くようにしてほしい

61:デフォルトの名無しさん
18/08/25 12:25:42.67 Buh9wu1g.net
つ ts-node

62:デフォルトの名無しさん
18/08/25 17:36:56.36 ImIAXjTG.net
Typescript からやるにも、良い書籍が無くない?
JavaScript の良い書籍で基礎学んでからTypescript やった方がわかりやすい気がする

63:デフォルトの名無しさん
18/08/25 17:40:26.05 jwlstBYZ.net
書籍とか流れが速すぎて向いてないわ
最初にやる言語以外で言語を学ぶ目的で書籍買うなんてC/C++くらいだろ

64:54
18/08/25 17:50:12.22 xUwKoZHr.net
そこまで変わらないのね 安心
tsから学んでみます
皆さん教えてくれてありがとう〜

65:デフォルトの名無しさん
18/08/25 19:03:42.73 hQEFe9I2.net
TypeScriptに __LINE__ マクロみたいな行番号埋め込む機能ってないよね?
デバッグ用にあったら良かったんだけど。

66:デフォルトの名無しさん
18/08/25 23:06:49.80 /7rCFVoA.net
>>62
んなこたーない
Effective JavaScriptに書いてあるようなことが自然と全て理解できてるなら要らないけど、そんな奴が5chを見てるわけないし

67:デフォルトの名無しさん
18/08/26 11:46:26.97 m2nYH45u.net
Effectiveは確かに読む意味がある本だわ
でもそれJavaScript既に知ってる人間が読む本だろ

68:デフォルトの名無しさん
18/08/26 13:10:52.02 yJfbxE3G.net
effは時代遅れ
tsやってりゃ半分は知る必要も無い

69:デフォルトの名無しさん
18/08/26 13:48:02.46 gb73y82y.net
tsそんなにいいかなぁ?
jQueryからvue、angularまで色々やってるけど、利点がよく分からないよ。

70:デフォルトの名無しさん
18/08/26 14:52:56.21 yJfbxE3G.net
そらjQueryからvue、angularなんて脇道に逸れた時代遅れのゴミ使ってるセンスのない、
ぼんやりしたボンクラにとっては、利点も糞も気付けないわなw

71:デフォルトの名無しさん
18/08/26 15:09:29.33 zw53fmop.net
angularは1系とか触ってたん?
今はtsで書かれてるはずだからts必須みたいなもんでわ?

72:デフォルトの名無しさん
18/08/27 18:38:54.97 Q4eMB8Ps.net
オワコンω
ウェブ業界に激震、全てのAndroid端末でJavaScriptが標準無効化、jsなしに作り直さないとGoogle村八分
スレリンク(news板)

73:デフォルトの名無しさん
18/08/27 19:16:34.54 nPk8x20U.net
マジならXamarin大勝利ですやん

74:デフォルトの名無しさん
18/08/27 19:20:05.06 3J2b9jYp.net
>>71
> 2017年10月から
なんとゆう今さらωωω
そしてAndroidではKotlin標準化と併せてTSも標準化されたのをご存知ないのですンゴ?ωωω

75:デフォルトの名無しさん
18/08/28 10:52:54.37 ejsnz9b5.net
TSの標準化はGoogle社内の話で、Android関係なくね?

76:デフォルトの名無しさん
18/08/28 17:26:54.93 fGjEV9Ei.net
TypeScript and Babel 7
URLリンク(blogs.msdn.microsoft.com)

77:デフォルトの名無しさん
18/08/29 17:32:18.35 d2bEpQya.net
みんなBabelがTS対応になってうれしい?

78:デフォルトの名無しさん
18/08/29 21:38:11.08 WBp+gbgf.net
別に。何も変わらん。
諸事情でバベってるのにFlowも入れてないゴミどもは
最新のバベルなんて使わないし使えないだろうから相変わらずコヒースクリプト(爆)みたいな生カスジャバスクだし
既にTS使ってる奴らはTSだし
何も変わらん。

79:デフォルトの名無しさん
18/09/19 23:22:13.98 k2lJKoIo.net
age

80:デフォルトの名無しさん
18/09/20 22:57:46.62 Pf20cirP.net
今さらドヤ顔でゆるいルール厳しいチェックとか言ってるのくそむかつく
厳しいルールが今まで普通だったのは
アバウトなのを許したらめちゃくちゃなのを差し込んで意図的に環境破壊していく会社がいたからだ
てめーらだけ安全地帯だからって

81:デフォルトの名無しさん
18/09/29 08:06:57.10 o2k5LxC2.net
Announcing TypeScript 3.1
URLリンク(blogs.msdn.microsoft.com)

82:デフォルトの名無しさん
18/09/29 21:52:21.84 suMMT2j4.net
早く世の全てのJSプロジェクトがTSになりますように

83:デフォルトの名無しさん
18/09/30 02:33:19.53 yrJA2uB2.net
>>51
めちゃくちゃ重くてスマホではまず動かないレベルってんじゃなかったっけ?

84:54
18/10/04 22:31:58.31 B6XYHrci.net
importは他ファイルのクラスを持って来れるようにするのよね
@xxxxxのデコレータの役割がわからないのだけど誰か教えてくれんかね・・・
「付加情報をclassやmethod等に付与するための仕組み」ってなんぞ
Javaでいうアノテーションらしからそれも調べたけどわからない・・・^p^

85:デフォルトの名無しさん
18/10/04 22:43:24.09 hO6zdZTE.net
pythonのデコレタといっしょ

86:デフォルトの名無しさん
18/10/18 22:51:05.35 Rszm7VcT.net
TypeScriptでジェネリクスを使ったとき、C++でいうテンプレートの特殊化のようなことって
できないもんですかね?
function func<T>(x) でTがnumberとstringの場合とで別の処理ができたらいいんだけど。

87:デフォルトの名無しさん
18/10/19 02:55:24.30 iO0N1Qhu.net
型情報で実際に呼ぶ関数のオーバーロードの振り分けはできたりはしない
共用型 string | number を使えば string と number 以外の型は入らなくなる
実装部分は typeof arg === 'string' とかで分岐。返り値の型は推論される
推論が思ったようにいかなそうなら mapped type 使うなりオーバーロードの宣言を書いたりしても良い

88:デフォルトの名無しさん
18/10/19 07:51:09.81 1EDOmnkE.net
ありがとう。やっぱりダメか。
> typeof arg === 'string'
Tがstringだったら'string'と比較するってのをやりたかった。

89:デフォルトの名無しさん
18/10/20 14:25:59.55 QA1RjyY/.net
Typescriptのコンパイラのソースコードを見たが、
swicth文による条件分岐が乱用されていて美しいソースコードではなかった。
もっと良い設計があるはず。

90:デフォルトの名無しさん
18/10/20 15:52:27.22 /P2yZ5ci.net
構文木のような構造には多態はうまくマッチしないんだよ

91:デフォルトの名無しさん
18/10/20 18:08:40.09 odoUcQpl.net
構文解析とか条件分岐(状態遷移)の塊だろ
状態遷移とかswitch文そのものだ

92:デフォルトの名無しさん
18/10/21 15:12:34.19 N0iXX+FC.net
>>88
そう思うならお前が改善してプルリク送ってもいいのよ

93:デフォルトの名無しさん
18/10/21 15:27:26.85 GSIJUR7C.net
>>91
なぜ高貴なハイクラスエンジニアの俺様がただ働きせにゃならんのだ?
バカなのか?

94:デフォルトの名無しさん
18/10/23 18:43:56.54 +WvUI4qM.net
Typescriptのコンパイラのアルゴリズムは何ですか?
ソースコードを見たところ再帰下降解析らしいけど、それだと左再帰で問題が出るよね。

95:デフォルトの名無しさん
18/10/23 18:48:28.71 BSENAQfG.net
ハイクラスの俺様が就職したら低レベルの土方を蹴散らしす

96:デフォルトの名無しさん
18/10/23 19:39:38.93 f9dUVIKz.net
5chになってから急に自分の書き込みに誤植増えた
絶対何かある

97:デフォルトの名無しさん
18/10/23 19:42:09.06 EVpcwrUE.net
就職してないのかよw
ハイクラスなら就職なんてしなくても学生の内から引く手あまただろ
または起業しろよ

98:デフォルトの名無しさん
18/11/07 08:20:52.86 lnxFtwDW.net
今の職場でts+Vue.jsで作ってる案件があるんだけど、コードの肥大化と共に
型チェック付きのビルドに10分以上かかるようになっちゃって型チェックなしのヒルドに変更してしまってるんだけど
そういう事例って他のところにもある?

99:デフォルトの名無しさん
18/11/07 08:56:34.35 +94YsfsL.net
世界でも有数の大規模ソフトウェアであるVSCodeがTypeScriptでビルドされている以上、
利用者のスキルの問題でしかないな

100:デフォルトの名無しさん
18/11/07 15:40:12.32 d0XTpm7T.net
まぁ、今どきVueを選んじゃう技術力・審美眼のないとこじゃしょうがないんじゃないか?
糞うるさいポンコツウインドウズXPとか使ってそう

101:デフォルトの名無しさん
18/11/07 16:13:39.60 mdwOvRGk.net
React使いがよく言うよな。技術力&審美眼。
魔窟になってるのを技術力と言い換えて、そのアーキテクチャを美と言い換えるやつ。

102:デフォルトの名無しさん
18/11/07 19:54:03.59 ReL8stLA.net
うちのプロジェクトもビルド時間5分なんでどうにかしたいなぁ。
makedepend+makeが欲しい。

103:デフォルトの名無しさん
18/11/07 20:15:51.54 NQOj7Zqs.net
>>98
それ可笑しくね?vscodeビルドしたことあるの?

104:デフォルトの名無しさん
18/11/07 20:16:37.40 NQOj7Zqs.net
>>99
mbp2017つかってる。メモリは8gbだけど

105:デフォルトの名無しさん
18/11/07 22:25:07.54 LyspAo2Z.net
>>103
チャイニーズに尻尾振るガラパゴスVue民にはお似合いのゴミだなw

106:デフォルトの名無しさん
18/11/09 18:28:02.99 npJX8Ub3.net
module と namespaceの使い分けは
どうやればいいの?

107:デフォルトの名無しさん
18/11/09 18:56:45.93 gzUh27KV.net
使い分けるものではない
moduleはnamespaceに置き換えられた
常にnamespaceを使用せよ

108:デフォルトの名無しさん
18/11/09 19:06:31.99 npJX8Ub3.net
>>106
了解

109:デフォルトの名無しさん
18/11/10 09:38:47.43 h5ltDNBL.net
type と interface の使い分けは
どうやればいいの?

110:デフォルトの名無しさん
18/11/11 11:38:30.86 Cm/nwVcs.net
>>108
ほぼ一緒だから気にしなくていい。
Typescriptの仕様書にも「非常に似ている」と書いてある。
ただ、interfaceは
inteface Point {
x:number:
}
interface Point {
y:number:
}
というようにプロパティの追加ができるが、typeはできない。それぐらいしか違いがない。

111:デフォルトの名無しさん
18/11/11 13:05:47.70 /+pk64i1.net
TSLintのデフォがtypeよりinterfaceを推してくるからとりあえずinterfaceにする事が多い

112:デフォルトの名無しさん
18/11/11 14:07:03.02 R0IiHkaX.net
>>110
これメンスだがtypeしか使えない機能なかったっけ?

113:デフォルトの名無しさん
18/11/11 15:41:10.38 YkGULP39.net
交差型、共用体型を定義できるのはtypeだけだな。

114:デフォルトの名無しさん
18/11/11 20:39:14.47 3jMJhmwM.net
例えば file1.tsを編集していて、バックアップとしてそのファイルを複製して
file1 - コピー.ts
を作ったとすると、関数名が重複していますみたいなエラーがダダダーと
出るんですが、どのように対策すれば良いでしょうか?

115:デフォルトの名無しさん
18/11/11 20:52:52.31 B3f/927d.net
自分はいつもバックアップはfile1.ts.bakって付けてる。

116:デフォルトの名無しさん
18/11/11 20:59:48.79 MG/LuDvG.net
git使いなさい

117:デフォルトの名無しさん
18/11/11 21:18:11.36 3jMJhmwM.net
>>115
サーバーが必要なんでしょ?
そんなの持っていないし

118:デフォルトの名無しさん
18/11/11 21:29:24.04 MG/LuDvG.net
必要ないですよ

119:デフォルトの名無しさん
18/11/11 21:29:49.74 cIalEm6/.net
gitにサーバが必要とか正気か
いいからとりあえずチュートリアルやってみろ

120:デフォルトの名無しさん
18/11/11 21:42:32.66 3jMJhmwM.net
>>118
チュートリアルどこにあるのよ?

121:デフォルトの名無しさん
18/11/11 23:28:37.79 R0IiHkaX.net
>>119
man git
で英語を読む
でも、君にはそんな技術も学も根性もなさそうだから、
やっぱりfile1 - コピー.ts.bak181110ってするのがいいと思うんだ。
いや君をバカにしてるわけではなくて。
猿は猿らしい生活をした方が幸せだと思うからさ。ね。

122:デフォルトの名無しさん
18/11/11 23:59:28.42 cIalEm6/.net
>>119
これ以上は他所でやってくれ
お前さんの質問に対する回答は
* 編集バックアップをファイルコピーでとるというのがクソ
* 拡張子も変えてないならビルド対象になって当然
でおしまい

123:デフォルトの名無しさん
18/11/14 23:56:36.53 aDOvGxXC.net
流石に不親切すぎる。猿でもわかるgitとか読むと良い

124:デフォルトの名無しさん
18/11/17 15:07:14.11 BcZrVMNP.net
TypeScript使うな。汚らわしい。
バカはバカらしくPHPでも使ってろゴミ。

125:デフォルトの名無しさん
18/11/18 12:08:33.81 uaqKqGAI.net
猿でも判るように書いたら人間に判らなくなりました

126:デフォルトの名無しさん
18/11/18 13:48:19.18 pdwgi8hG.net
猿ですがわかりません

127:デフォルトの名無しさん
18/11/26 23:24:03.84 uFKIPm3P.net
elem.onclick = function () {
if (this.classList.contains('classA')) {
・・・
}
こんなコードを書くと、Visual StudioのTypeScriptで
エラー TS2339 (TS) プロパティ 'classList' は型 'GlobalEventHandlers' に存在しません。
と出るのですが、生成されるJavaScriptコード(上のコードを同じ)は問題無く実行出来る。
これは何故ですか?

128:デフォルトの名無しさん
18/11/26 23:28:58.28 //9j39Lt.net
あのさぁ…何のためにTypescript使ってんのよ…

129:デフォルトの名無しさん
18/11/26 23:46:28.79 uFKIPm3P.net
>>127
仕事で仕方なく

130:デフォルトの名無しさん
18/11/26 23:49:14.79 S88o/5+S.net
thisを使わないか、addEventListener使う

131:デフォルトの名無しさん
18/11/26 23:57:01.52 S88o/5+S.net
this: GlobalEventHandlers のところは this: thisじゃだめなのかな?

132:デフォルトの名無しさん
18/11/26 23:59:28.47 RFi6oWGn.net
アロー関数使うとかそういう話?

133:デフォルトの名無しさん
18/11/27 02:25:43.08 7n6dok9k.net
>>126
elemにちゃんと型(多分HTMLElement?)が指定されてればそんなエラー出ないぞ

134:デフォルトの名無しさん
18/11/27 09:47:55.32 riCGJi9o.net
>>132
出るよ

135:デフォルトの名無しさん
18/11/27 09:56:31.77 riCGJi9o.net
>>129
addEventListenerでも同じだろ

136:デフォルトの名無しさん
18/11/27 10:22:11.47 AQW0OfN+.net
addEventListenerは要素ごとにシコシコ定義されていて、thisがその要素になっているのでOK
onclickとかはGlobalEventHandlersでmixin的に定義されていて、this: GlobalEventHandlersになっちゃってるのでNG

137:デフォルトの名無しさん
18/11/27 10:37:58.94 riCGJi9o.net
>>135
なるほど。でも、そもそも
this.classList ではなくて
elem.classList と書けばいいんじゃないか

138:デフォルトの名無しさん
18/11/30 10:49:11.23 jlBTh7S1.net
Announcing TypeScript 3.2
URLリンク(blogs.msdn.microsoft.com)

139:デフォルトの名無しさん
18/11/30 11:28:27.90 atRGowE7.net
Eitherさん素敵

140:デフォルトの名無しさん
18/12/01 10:07:51.30 7lSKHFDm.net
ようやくEitherでホイサーできるTSがきたか
しかしleftrightとパタマチがないとダメやろこれ

141:デフォルトの名無しさん
18/12/01 10:12:04.48 7lSKHFDm.net
よんだら、これEitherじゃなくホイサーだろ・・・
エラー処理強制できないEitherってナンジャー?
ゴミジャー

142:デフォルトの名無しさん
18/12/01 18:12:50.09 qYhERqMT.net
宇宙に満ちている光を伝える媒質、だっけ。

143:デフォルトの名無しさん
18/12/01 21:02:52.90 214oHlAj.net
それはether

144:デフォルトの名無しさん
18/12/01 21:38:50.33 qYhERqMT.net
旧盆に行われる沖縄の盆踊り、かな。

145:デフォルトの名無しさん
18/12/04 20:53:43.14 iqna8FaP.net
通常、string と string | null は同等なんでVSCodeのポップアップでも | null は省略されるけど、
これを省略させないで表示する設定ってないのかな。
strictNullChecks 使ったら区別できなくて困った。

146:デフォルトの名無しさん
18/12/04 21:39:51.76 O7AxfIIB.net
通常、string と string | null は同等じゃないです

147:デフォルトの名無しさん
18/12/04 21:46:28.77 WLbw6NyA.net
""はnullじゃないぞ

148:デフォルトの名無しさん
18/12/05 08:02:21.96 rsg3VEcH.net
他に困ってる人がいないってことは strictNullChecks 自体あまり使われてないのかな。

149:デフォルトの名無しさん
18/12/05 09:20:27.07 B/THyK2J.net
strictNullChecksは使ってるけどその困り方がよく分からないから具体的にどういうコードを書こうとした時に何が困るのか教えてくれるとありがたい

150:デフォルトの名無しさん
18/12/05 14:47:23.52 2sSegHBZ.net
馬鹿には無理

151:デフォルトの名無しさん
18/12/05 19:58:08.96 rsg3VEcH.net
function f(): string | null {
if(Math.random() === 0) {
return null;
}
return 'abc';
}
function g(): string {
return 'abc';
}
const x = f();
const y = g();
VSCode で x や f() にマウスポインタを当ててポップアップで型を表示しても
string | null じゃなくて string としか表示されないんでこれを区別できるようにしたい。

152:デフォルトの名無しさん
18/12/05 20:42:07.12 2r3P2eMd.net
tsc --init しなさい

153:デフォルトの名無しさん
18/12/05 20:43:39.84 kxOqR7S7.net
* プロジェクトルートにtsconfig.jsonはあるか
* tsconfig.jsonでstrictNullChecks或いはstrictが有効になっているか
* そもそもVSCodeでプロジェクトルートを開いているか

154:デフォルトの名無しさん
18/12/05 20:51:32.34 rsg3VEcH.net
なるほど、VSCode用のtsconfig.jsonを置いてやればいいってことか。ありがとう。
ビルド用のtsconfig.jsonは別の場所に置いてた。

155:デフォルトの名無しさん
18/12/05 20:57:46.26 kxOqR7S7.net
そりゃプロジェクトルートに無けりゃどういう原理で探してくるんだって話だ

156:デフォルトの名無しさん
18/12/05 21:04:20.27 rsg3VEcH.net
じゃなくて、VSCodeがtsconfig.jsonのビルドオプションに合わせて表示を変えているとは想像してなかった。

157:デフォルトの名無しさん
18/12/05 21:10:24.13 kxOqR7S7.net
そもそもtscもtslintもプロジェクトルートのtsconfig.jsonなりtslint.jsonなり読むんだから・・・・・

158:デフォルトの名無しさん
18/12/05 21:30:49.29 rsg3VEcH.net
各.tsに対してどのtslint.jsonが使われるかという認識はあったけど、
tslintもtsconfigを見てるのか。なるほど。

159:デフォルトの名無しさん
18/12/05 21:32:49.41 kxOqR7S7.net
誤解を招く書き方だったから訂正しておくけどtslintはtsconfig.json読まんよ

160:デフォルトの名無しさん
18/12/21 21:25:18.74 X6PhK/jL.net
今日は emitDeclarationOnly でd.tsだけ出力できることを発見した

161:デフォルトの名無しさん
18/12/22 01:07:22.52 RH928dFE.net
jap is crazy monkeys

162:デフォルトの名無しさん
18/12/24 11:44:39.27 zyOojth7.net
拡張子だけ許せない

163:デフォルトの名無しさん
18/12/24 11:56:09.60 JT2deTbq.net
TransSexual

164:デフォルトの名無しさん
18/12/25 02:39:04.38 atOE2BOw.net
動画と被ってる

165:デフォルトの名無しさん
18/12/31 06:26:09.53 65rO9GPR.net
rollup覚えた

166:デフォルトの名無しさん
19/01/10 03:06:03.03 Zf9Oh0RM.net
export as namespace が何をどうしてるのかさっぱりわからん

167:デフォルトの名無しさん
19/02/01 09:17:10.17 Cg5cm39S.net
Announcing TypeScript 3.3
URLリンク(blogs.msdn.microsoft.com)

168:デフォルトの名無しさん
19/02/14 09:58:56.90 fCWwgaGu.net
JavaScriptを勉強したことがないので、今からならどうせならとTypeScriptの方を身につけたいんだけど・・・・
これって先ずJavaScriptが出来ないことには実用にならないの?

169:デフォルトの名無しさん
19/02/14 10:01:00.45 zQRRDS2s.net
そうでもないんじゃない

170:デフォルトの名無しさん
19/02/14 11:21:03.44 sZU59yH4.net
typescript は javascript の上位互換なのだから、ts やってるうちに js のことも勉強しなければならなくなる (特に、es5, es2015 とかのキーワードで)
言い換えれば、ts を勉強してれば js が出来るようになる

171:デフォルトの名無しさん
19/02/14 11:22:03.05 MlsuSDTj.net
>>167
javascript9割以上+TypeScript追加仕様なんだからjsやらないなら使う意味ねえだろ

172:デフォルトの名無しさん
19/02/15 00:32:30.89 UOWlr3Ch.net
正確にはTypeScript使ってるとJavaScriptの深い部分が気になってきて、最終的には自然とJavaScriptを勉強し始めてるよ
気にせずTypeScriptから始めれば良い

173:デフォルトの名無しさん
19/02/15 19:47:15.67 iHivKYcL.net
tsだけで理解できることをjsを経由する意味はないしむしろ型を考慮しないダーティーな解法を覚えさせられるだけ有害

174:デフォルトの名無しさん
19/02/15 22:59:18.80 XxBbyQo/.net
tsの、ライブラリの95パー以上がjsなんだから
どうにもならん。
pythonの型アノテーションを
完全に付ける書き方に別言語名つけてるようなもんだ。

175:デフォルトの名無しさん
19/02/16 16:31:11.68 HHyiFibH.net
>>172
動的型は型を考慮しないと思ってんのはお前だけだ
JavaScriptの全ての変数に型は存在しているし目の前の変数の型を知らずにコーディングしてる奴なんていない
JavaScriptは実行時に型チェックして型の正しさを保証して、
TypeScriptは実行前に型チェックして型の正しさを保証するって違いだけだ

176:デフォルトの名無しさん
19/02/16 16:54:05.42 sYjKK7tj.net
作ってる時に頭の中にある型なんか、作った後には何の意味もないし、実行時に型チェックするなんて馬鹿の極み

177:デフォルトの名無しさん
19/02/16 16:59:02.66 bRo2S9Sl.net
つ外部入力データ

178:デフォルトの名無しさん
19/02/16 18:28:18.38 HHyiFibH.net
>>175
頭の中w
JavaScriptには全ての変数に型があるんだ


179: アンダースタン?



180:デフォルトの名無しさん
19/02/16 18:29:05.39 STqQL4YT.net
jsのboolの型チェックはバグあるけどな

181:デフォルトの名無しさん
19/02/16 18:59:44.19 qw78JFeM.net
>>177
保守する人には作ってる人の意図はわからないって意味だよ

182:デフォルトの名無しさん
19/02/16 19:03:19.63 qw78JFeM.net
動的のつらみはrubyとかjavascriptで散々通ってきてtypescriptに行き着くわけだけど、
まだそこを通過中の人とは話が噛み合わないんだよなあ
結局こっちに来ることになるのに

183:デフォルトの名無しさん
19/02/16 19:28:50.73 HHyiFibH.net
TypeScriptにUnion型がある時点で最早動的型と言ってもいい
宣言したあとに離れた場所のコードを見ても、パッと見じゃどっちの型になってるかは分からないからね

184:デフォルトの名無しさん
19/02/16 19:36:05.44 JPFBQxX7.net
any型もあるぞ

185:デフォルトの名無しさん
19/02/16 19:38:44.73 qw78JFeM.net
>>181
typescirptってそういうところもチェックしてくれるんだぞ

186:デフォルトの名無しさん
19/02/16 21:04:52.10 czmkS5Li.net
データ型と混同してない?

187:デフォルトの名無しさん
19/02/16 21:15:59.20 dfsqwbBr.net
動的型の言語、結局人気が年々下落しはじめてる。
c#やtypescriptぐらいの、型あり基本で、
いざとなったら、部分的問わないのも、
自然で簡単に書ける、程度が今はよいな。

188:
19/02/16 21:32:01.93 rUZ2ZZ3T.net
>>185
型を意識しない、というのは私には有用にみえます、ただし変数宣言は動的型言語にも必要だと思いますが、それを表立って採用している言語はありますかね…

189:デフォルトの名無しさん
19/02/16 21:54:57.88 aDxQaKE+.net
言語の人気が年々移り変わる、
ということは、
いつかtypescriptも、ほかの型付き、部分的型付き言語の人気も、移り変わる、
とは、考えないのか?

190:デフォルトの名無しさん
19/02/16 23:06:35.69 xN2b9tEZ.net
動的ウンコガイジどもに型の有用性説いても、豚に真珠だろ
ペチプァやらルビ豚やら、あいつら中卒のガチゲェジだからな

191:デフォルトの名無しさん
19/02/17 16:04:02.49 D60SxZ1Q.net
>>188
> 型の有用性
だから動的型言語にも型はあるし型の有用性を享受してんだけど…何度言っても分からない奴は分からないんだな

192:デフォルトの名無しさん
19/02/17 16:11:02.99 YF9uE98b.net
そんな誰でもわかってることで得意げになってるのが恥ずかしい
一合目で山に登ったつもりになってる感じ
みんなもっと上にいるから!

193:デフォルトの名無しさん
19/02/18 11:46:04.18 +IiOz1o3.net
動的型と静的型では型の目的が違うことを理解していないらしいな

194:デフォルトの名無しさん
19/02/18 23:46:52.94 tCwq3WHG.net
昔は動的型付け言語と静的型付け言語って対義語みたいに思ってたけど、
TypeScriptやってみたら単純な二元論じゃないって気付かされた。

195:デフォルトの名無しさん
19/02/19 21:50:14.71 UOAs3sqY.net
そう対義語じゃない、分かりやすい表現だなぁ
本当に型が無いのはアセンブリ言語で、全てが整数になっててそれをどう解釈するかは本当に人間次第だからな

196:デフォルトの名無しさん
19/02/20 19:06:49.04 v7iPz90J.net
Cのunionもそういう意味では何でもあり

197:デフォルトの名無しさん
19/02/20 19:08:18.41 hK+DOQws.net
そういうのを昔の人は「型あって型なし」と言ったのだ

198:デフォルトの名無しさん
19/02/21 14:36:31.18 BCvd3Fow.net
同じファイルの書き込み処理なんかをRubyが5行で書けて、Javaが15行とかで書いて、いかにJavaが駄目かってブログ記事がはてなブックマークとかでよくバズってたな
声のでかい人はいつでもいる

199:デフォルトの名無しさん
19/02/22 14:01:01.67 w8nQWD0s.net
るbyなら一行で描かないと負け

200:デフォルトの名無しさん
19/02/23 02:18:28.49 +i56xIDn.net
Javascriptのthisというか変数スコープが厄介でHaxeやってるけど
Typescriptはその辺の問題点引き継いでる?

201:デフォルトの名無しさん
19/02/23 03:19:51.50 R2s6jSV3.net
「thisというか変数スコープ」?
分かってないことは分かった。
お前はどの言語やっても大成しない。

202:デフォルトの名無しさん
19/02/23 08:32:08.65 DQY5g4De.net
JavaScript(JS)/TypeScript(TS) のthis は、おかしい!
一方、jQuery, Haxe は、それを修正してる
また、JS/TS の== は危険だから、使っちゃいけない!
厳密等価演算子=== を使うべき!
一方、Haxe, Ruby は、== でOK
Haxe には、マクロ、引数つき列挙(enum)、代数的データ型、パターンマッチ、マルチプラットフォームがあるけど、TS には無い。
特に、switch 文での、enum が強力!
引数の型で分岐できるから、インタフェースと同等!
このサイトで、ブラウザでプログラミングして、実行できる
Try Haxe !
try.haxe.org/
Haxeプログラミング入門、尾野政樹、2015
Haxe は、Elixir に似てね?
プログラミングElixir、2016

203:デフォルトの名無しさん
19/02/23 10:27:04.01 apHI25Q1.net
thisや==は今ならeslint/tslint任せでほとんど問題ないね。
引数付きenumはようはUnion Typeだし、代数的データ型はTagged Union Typeかな。
パターンマッチそのものはないけどType Guardで似たようなことができる。
マクロとマルチプラットフォームはさすがにないな。

204:デフォルトの名無しさん
19/02/23 11:20:14.57 R2s6jSV3.net
haxe?ああtsに負けて滅んだ言語かw

205:デフォルトの名無しさん
19/02/23 11:24:28.53 ks3X52WF.net
弊社、ガイジが導入したhaxeが完全な負の遺産化しててうんざりするわ
死ねとまでは思わないけど、産まれてこなければよかったのに

206:デフォルトの名無しさん
19/02/23 11:27:21.05 rwRcja1T.net
thisはそもそも使う必要がない
jQueryとか昔のライブラリを使うとthisを使わざるを得なくなって混乱する
変数スコープの問題は多分変数の巻き上げの事だと思うけど、TypeScriptは変数を宣言する前にアクセスはエラーだから変数スコープの問題は無い

207:デフォルトの名無しさん
19/02/23 12:07:09.04 Y+/6FGBc.net
言語でマルチプラットフォームってどゆこと?

208:デフォルトの名無しさん
19/02/24 19:32:04.72 iK4D+UQi.net
一般にバイナリ互換のこと。
スクリプト言語はソースコード=バイナリ扱いだが。
Qtとかのライブラリはソース互換やね。
そのライブラリと標準ライブラリ使う分にはマルチプラットフォーム。

209:デフォルトの名無しさん
19/03/27 22:29:10.88 ZMj2RB3N.net
TypeScriptのリテラル型を知って目から鱗だったんだけど、元ネタってどこなのかな?
TypeScript以前に採用していた言語とかある?

210:デフォルトの名無しさん
19/03/28 08:22:20.68 XxNMz1Hs.net
URLリンク(www.infoq.com)
Flowは,少なくともこの分析を実施した1年前には,Facebookによって極めて閉鎖的な方法で進められていた言語です。
開発はまったく透過的ではなく,ロードマップも公開されていませんでした。
プロジェクトへのコントリビューションは,Facebook以外からはほとんどありませんでした。
対照的にTypeScriptは,数年前にGitHubに移動して以降はオープンソース開発を採用しています。
最新のロードマップを公開し,外部からのコントリビューションを受け入れ,全般的にコミュニティとの密接な関係を維持しています。
Flowオープンソースはほぼ放置されているので,現時点ではTypeScriptに切り替えた方がよいと思います。
このような懸念に対してFlowチームは,現在の進捗状況と2019年計画の見直しによる対処を始めている。
この概要の中で,FacebookのソフトウェアエンジニアであるAvik Chaudhuri氏は,FlowからTypeScriptへの移行について取り上げている。
 最近,Facebookを起源とするオープンソースプロジェクトの多くが,TypeScriptでのリライト計画を発表しています。
 Facebookでは個々のチームの独立性を強く尊重しており,各チームがロードマップを作成し,
 開発中のプロダクトに対して最大限の努力を払っています。TypeScriptへの切り替えを決定したプロジェクトは,
 この切り替えによって外部コントリビュータによる支援をより多く受けられるようになります。私たちはこの決定を尊重します。

211:デフォルトの名無しさん
19/03/31 08:32:04.33 9gmhFJUR.net
Announcing TypeScript 3.4
URLリンク(devblogs.microsoft.com)

212:デフォルトの名無しさん
19/04/27 22:21:18.33 DaKsj35I.net
export default Vue;
export as namespace Vue;
型定義が↑だとjsのスクリプトモード(import なし)で↓のようにvscode認識してしまって悲しい
new Vue();      // NG
new Vue.default(); // OK
export default Vue じゃなくて export = Vue なら大丈夫っぽいんだが

213:デフォルトの名無しさん
19/04/27 23:00:39.62 f59bAkpS.net
Vueなんてゴミ使ってるのが悪い

214:デフォルトの名無しさん
19/05/07 14:32:47.27 L9HTQYS7.net
質問なんですが、
interface TypeMap<T> {
 a: number
 b: string
 c: T
}
declare function test<T, K extends keyof TypeMap<T>>(arg: K): TypeMap<T>[K]
test("b")
test<number, "c">("c")

これをtest<number>("c")って書けるfunction testの定義の仕方ってあります?

215:デフォルトの名無しさん
19/05/10 03:36:53.56 lySswCnH.net
ついにunion distributionを理解してしまった

216:デフォルトの名無しさん
19/05/20 18:15:00.44 VITeHWYT.net
TS3のunknown型いいな。
てかany入れずに最初からこれにしとけや。

217:デフォルトの名無しさん
19/05/20 23:15:37.00 F98TWhut.net
esの上位互換である以上anyは無きゃいかんだろう。

218:デフォルトの名無しさん
19/05/22 08:13:28.81 hKcnqksZ.net
unknownからの簡単にキャストできるような値ばかりなら、確かにanyはいらんかったろうな

219:デフォルトの名無しさん
19/05/30 08:25:00.89 nLvOZq4e.net
Announcing TypeScript 3.5
URLリンク(devblogs.microsoft.com)

220:デフォルトの名無しさん
19/05/31 23:01:09.01 a9j+ivtb.net
TSも知らんフロントエンドエンジニアとか死んでほしいわ

221:デフォルトの名無しさん
19/06/01 00:45:31.22 MTpxg6Tq.net
知ってるだけでデカい顔してるフロントエンドエンジニアも死んで欲しいわ

222:デフォルトの名無しさん
19/06/01 16:36:48.07 g95cx8x2.net
ts知ってるだけででかい面できるってどんな現場だよ

223:デフォルトの名無しさん
19/06/01 19:04:47.55 +itGqD4a.net
それくらい世界はまだJSの悲しみに満ちているってことさ
救ってあげようよ、僕らで

224:デフォルトの名無しさん
19/06/01 19:52:58.38 4hNhVGGP.net
お前だれだよ

225:デフォルトの名無しさん
19/06/01 20:56:08.22 TTPVYQ4N.net
strictNullChecksをtureにしてる人いる??
ロジックではnull禁止できるけどさ、
dbからgetしたデータに混じるんだよね。
未入力状態のデータって奴。
null撲滅マスターの方は、どう解決してるの??

226:デフォルトの名無しさん
19/06/01 20:58:48.44 +itGqD4a.net
それはDBの設計が腐ってるし、unknown | null型なんだろ
ロジックが間違ってる

227:デフォルトの名無しさん
19/06/02 11:14:24.16 567ijWyR.net
そもそも、実行時にnullやundefinedが混じるという話とstrictNullChecksに直接の関係はないだろ。
その中間のどこかで困っているんだろうけど、それがわからないとなんとも。

228:デフォルトの名無しさん
19/06/02 11:38:18.31 nWi1j94r.net
nullableなfieldをgetしたらそりゃnullableでしょ

229:デフォルトの名無しさん
19/06/05 02:53:11.94 QtDGLGvu.net
Visual Studio Code でAngularの勉強をしているのですが、
TypeScriptのthisがどこのコードを参照しているのかイマイチ理解できていません。
このthisをマウスオーバーしたら参照先のコードを表示してくれる拡張機能はありませんか・・・?
現状ですとthisにマウスオーバーをすると this:this と表示されます

230:デフォルトの名無しさん
19/06/05 08:05:19.27 a1ZirxB/.net
Angular自体糞だからやめとけ

231:デフォルトの名無しさん
19/06/05 08:30:28.74 gaDZjJ4I.net
vueをやるんだ

232:デフォルトの名無しさん
19/06/07 22:14:26.23 GySnd9K9.net
みんな、質問。
TSって公式のスタイルガイド無いけど、
みんな何使ってる?
正直googleのは末尾カンマが受け付けない。。

233:デフォルトの名無しさん
19/06/07 22:21:16.75 POgNcTtv.net
prettierで終わり
受け付けないもクソもない
おまえのスタイルは全てクソで、prettierを信じろ

234:デフォルトの名無しさん
19/06/10 00:34:38.75 pNMWMTmc.net
>>231
設定は??
信じていいprettierはデフォ設定でOKなの?

235:デフォルトの名無しさん
19/06/10 07:11:15.54 s0ANUlh8.net
>>232
デフォと言いたいが
arrowParens: "always",
semi: false,
trailingComma: "es5",
のみ付けるのが多い(気がする)

236:デフォルトの名無しさん
19/06/10 07:12:37.13 s0ANUlh8.net
semi: false,
だけは本当に極稀に問題になるから、設定しなくてもいい
目障りだから俺は設定するけどね

237:デフォルトの名無しさん
19/06/13 17:34:43.34 3ecrlnnk.net
>>233, 234
ありがとう!試してみる!

238:デフォルトの名無しさん
19/06/15 19:57:13.61 60xjKXFz.net
const x = { a: 'b' };
この x の型は { a: string } になってしまうみたいだけど、 { a: 'b' } 型にする方法ってないんでしたっけ?
TypeScript 3.5です。

239:デフォルトの名無しさん
19/06/15 20:04:24.55 v9vM6Xqi.net
const x: { a:'b' } = { a: 'b' };

240:デフォルトの名無しさん
19/06/15 20:10:32.39 60xjKXFz.net
const x = { a: 'b' as 'b' }; もいけるみたいだけど冗長だなぁ。

241:デフォルトの名無しさん
19/06/15 20:14:03.78 LRsRofRH.net
as const

242:デフォルトの名無しさん
19/06/15 20:32:57.50 60xjKXFz.net
>>239
ありがとう!これだ。

243:デフォルトの名無しさん
19/06/15 22:08:42.82 B5XNjjWA.net
デフォルトで全部 as const にするオプションとかあればいいのに

244:デフォルトの名無しさん
19/06/21 19:39:39.40 NhtzQec8.net
今日の疲れやばい

245:デフォルトの名無しさん
19/06/21 19:42:13.96 NhtzQec8.net
anyを許すルールにするっつったら
「でもapiからくる値なら全て型定義できますよね?」
って言われたことにものすごい疲れた
完璧なappなんかねーんだよ!!!ってキレそうだったわ

246:デフォルトの名無しさん
19/06/21 19:42:54.97 NhtzQec8.net
一生インターフェース書いてろ!

247:デフォルトの名無しさん
19/06/22 13:59:29.40 cvRfxwEO.net
そこでunkownですよ

248:デフォルトの名無しさん
19/06/22 14:09:53.49 lgEn1aKj.net
unknown確か途中で足されたよな。最初から入れとけおもた。

249:デフォルトの名無しさん
19/06/22 15:50:14.82 cvRfxwEO.net
みんあなはallow any 派?

250:デフォルトの名無しさん
19/06/22 18:02:27.27 WCwRyrQC.net
>>247
許容派です。
再帰処理とかをまともに型付してたら、辛すぎる。。
ちなみに
const arr = []
で、never[]型になるのがしんどい。
設定でany[]型にならないでしょうか・・?

251:デフォルトの名無しさん
19/06/22 20:42:33.24 vT6NYB6v.net
明示的に型を書けばいいじゃん

252:デフォルトの名無しさん
19/06/22 22:04:34.45 1mmW7z7g.net
てかリテラルの [] が never[] になんかなる?

253:デフォルトの名無しさん
19/06/23 13:58:34.11 iaXcaTkq.net
eslint が v6.0.0 になったら @typescript-eslint/parser が読み込めなくなった
とりあえず issue をみて ./node_modules/@typescript-eslint/parser/dist/parser.js で
require("eslint/lib/util/traverser")

require("eslint/lib/shared/traverser")
でやり過ごしてる

254:デフォルトの名無しさん
19/06/24 11:41:32.01 218UFAwP.net
この研究によるとTypeScriptは最もバグ発生率が低い言語なんだけどその理由とか体感とかありますか?
URLリンク(web.cs.ucdavis.edu)
>TypeScript −1.32 (0.40)∗∗ −2.15 (0.98)∗ −1.34 (0.41)∗∗ −0.34 (0.07)∗∗∗

255:デフォルトの名無しさん
19/06/24 11:46:37.72 eHWTfFeZ.net
コンパイラにバグが無い
コンパイル中にコードのバグは発見出来る
アルゴリズムのバグは知らんがな

256:デフォルトの名無しさん
19/06/24 21:38:49.72 RR0ut14u.net
TypeScriptで書いたプロダクトにバグが少ないのか、TypeScriptコンパイラにバグが少ないのか、どっちよ?

257:デフォルトの名無しさん
19/06/24 21:39:48.85 RR0ut14u.net
あと今土器pdfなんかで出すなよボケカス
日本語翻訳使えないだろが

258:デフォルトの名無しさん
19/06/24 21:52:09.72 RR0ut14u.net
TS >>> JS
という話なら圧倒的同意しかないのだが
URLリンク(www.reddit.com)
他の言語と比べてどうこうはわからん
あと動的型無し糞言語がゴミというのも同意

259:デフォルトの名無しさん
19/06/25 18:21:53.19 Cc6pu6kp.net
>>254
TSで書かれたソフトウェアにバグが少ない
そのPDFによれば調査対象のメジャーな10種くらいの言語の中で最も少ない

260:デフォルトの名無しさん
19/06/25 20:19:43.86 VFPzRDke.net
C#と大して変わらんのにバグが少なくなるって根拠がよく分からん
JavaScript上がりのプログラマが使うことが多いから良く訓練されているってのが考えられる根拠だなw

261:デフォルトの名無しさん
19/06/25 23:32:40.42 AQeJL9YJ.net
ユーザのリテラシが高いが後押ししてるのはありえそうだな
phpあたりは言語もユーザもガイジだからかわいそう

262:デフォルトの名無しさん
19/06/26 00:17:43.45 +9DnWsFD.net
JavaScriptは初心者が触るには最悪の言語と言っても過言ではないないから、ありとあらゆるバグを出して大変な目に遭ったプログラマがTypeScriptを使うことになると、バグも少なくなるだろうなという意味だよ

263:デフォルトの名無しさん
19/06/26 00:40:51.84 q5HP9tQR.net
つか論文?の表の見方がわからんのだが

264:デフォルトの名無しさん
19/06/26 00:41:37.75 q5HP9tQR.net
よくよく読んだら、ほんとは一番バグが多かったとかいうオチ??

265:デフォルトの名無しさん
19/06/26 00:45:17.97 f1MF/JvG.net
スレッドがないとかポインタがないとかでできないことがある分バグも減るでしょ

266:デフォルトの名無しさん
19/06/26 00:49:58.46 q5HP9tQR.net
>>263
できないことだらけにしたGoさんはどうなりましたか・・・?

267:デフォルトの名無しさん
19/06/26 09:13:51.70 qk5ECIA8.net
このスレの住人なら当然ターミナルはコレだよな!
Terminus - TypeScript製のターミナル
URLリンク(www.moongift.jp)

268:デフォルトの名無しさん
19/06/26 12:25:57.23 7Ob4FOl6.net
>>264
Web画面なんて壊れてても気にしないからコミット取り消さないし
そもそも画面実装とか


269:Tーバに比べて問題の範囲が限定的でたいして難しくないだろ 最初から扱ってる問題が言語ごとにちがうんだ この表ってか論文で一緒にしてるのおかしい あ、型なし言語はあかんと思います



270:デフォルトの名無しさん
19/06/26 16:21:39.07 b+WM9Si2.net
確かにCとかC++は基礎的なソフトに使われるから
僅かなバグも絶対に許されないとこありそう
それ以外にポインタ使ってるからってのもあるだろうけど

271:デフォルトの名無しさん
19/06/29 10:08:56.36 /kbU3u2K.net
>>266
動画の新しいエンコーダ作るとか、プログラムじゃなくて数学のレベルを求められる仕事は置いといて、
webならフロントの方がよっぽど複雑じゃない?
バックなんて同期処理でお決まりのレールに乗ってダラダラ書いてくだけだし。
複雑でパフォーマンスが要求されるpwaとか、typescript無かったら絶対に完成する気しないわ。
カオス過ぎる

272:デフォルトの名無しさん
19/06/29 10:25:06.32 Kp+ip4R/.net
js/tsだけどダイアログとか出すときに
モードレスにした方がユーザーには使い易いのに
バグが増えそうだからモードレス禁止ってことで
全部モーダルで造らされたことがある

273:デフォルトの名無しさん
19/06/29 19:29:55.34 pedxXkW2.net
型の判定の正しい手順ってどうだっけ?5行目で引っかかってしまう。
function isMyType(o: unknown): o is MyType {
if (typeof o !== 'object') { return false; }
if (!o) { return false; }
if (!('key' in o)) { return false; }
if (!o.key) { return false; } // ts7053
return true;
}

274:デフォルトの名無しさん
19/06/29 23:44:35.08 rJpz/Ysh.net
ひえっ…
typescript使う意味あるのこれ

275:デフォルトの名無しさん
19/06/30 01:10:38.25 7Llu84Qc.net
そりゃTypeScriptだって魔法じゃないんだから。
すごいのは外部から渡された得体の知れない値をこうやって動的に型判定して
それを静的な型の世界に持ち込めるところ。

276:デフォルトの名無しさん
19/06/30 01:36:24.68 y+UHg1Q8.net
ts知らないけど処理系がロード済みの型一覧を取得できないの

277:デフォルトの名無しさん
19/06/30 02:09:58.63 uFOYv7Ak.net
unknownじゃなくてanyでいいでしょ

278:デフォルトの名無しさん
19/07/01 22:30:11.88 VQESBdFl.net
>>270
この返り値、なんていう記法?
というか、なぜこんな書き方が必要なの?

279:デフォルトの名無しさん
19/07/01 23:18:57.13 yt2EFQVJ.net
user defined type guard function でググれ。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

317日前に更新/267 KB
担当:undef