2
私はTypeScriptを初めて使い、Webアプリケーションを監視するサーバーで作業しています。 pingとエンドポイントの状態を配列に保存するメソッドがあります。次に、そのアレイ内のエントリに応じてサーバのステータスを判断する必要があります。メソッドは正常に動作するはずですが、私は適切な方法で配列を初期化していないと思います。文字列を含むべきTypeScriptで配列をインスタンス化する方法は?
setServersStatus() {
let allStatus: String[] = new Array(); // Here I get a Warning "Instantiation can be simplified"
for (let server of this.servers) {
if (server.restendpoints != null) {
for (let rest of server.restendpoints) {
switch (rest.status) {
case "OK":
allStatus.push("OK");
break;
case "WARNING":
allStatus.push("WARNING");
break;
case "ERROR":
allStatus.push("ERROR");
break;
default:
console.log('status empty');
}
}
}
if (server.ping != null) {
switch (server.ping.status) {
case "OK":
allStatus.push("OK");
break;
case "WARNING":
allStatus.push("WARNING");
break;
case "ERROR":
allStatus.push("ERROR");
break;
default:
console.log('status empty');
}
}
if (allStatus.indexOf('ERROR')) {
server.status = 'ERROR';
}
else if (allStatus.indexOf('WARNING')) {
server.status = 'WARNING';
}
else if (allStatus.indexOf('OK')) {
server.status = 'OK';
}
allStatus.length = 0;
}
}
私はまた、次のように初期化しようとしたが、それはうまくいきませんでした:
let allStatus = []; // Here it says "Variable allStatus implicitly has an any[] type"
それでは、どのように私は活字体で適切に配列を初期化しますか?
のようなこのような型指定された配列はまた、作品を宣言することができます: '[] allStatusは=せ;' 私はしかし、最初の宣言をお勧めします。 –
Matthias247