私のプログラムで使用するコードを調べてみましたが、週番号を(ISO標準に従って)計算します。 typescriptを使用して私の角度アプリ。 JavaScriptでちょうどあるコードを見つけるのは非常に難しいですが、私は何かを見つけたかもしれないと思います。エラー:算術演算の右辺は 'any'、 'number 'または列挙型です。typescriptで週数を計算する - 算術演算の右辺は 'any'タイプでなければなりません
私はこれが何を意味するかわかりません。
import { Injectable } from '@angular/core';
@Injectable()
export class WeekNumberService {
constructor() { }
ISO8601_week_no(dt) {
var tdt = new Date(dt.valueOf());
var dayn = (dt.getDay() + 6) % 7;
tdt.setDate(tdt.getDate() - dayn + 3);
var firstThursday = tdt.valueOf();
tdt.setMonth(0, 1);
if (tdt.getDay() !== 4)
{
tdt.setMonth(0, 1 + ((4 - tdt.getDay()) + 7) % 7);
}
return 1 + Math.ceil((firstThursday - tdt)/604800000);
}
}
PS: は、ここで私は、コードを使用するように記述しようとしたサービスであり、私は唯一の週番号を探して、最後にしています。
を次の日:)ああ... Relativise:お使いのMac Proの書籍は、Macのように、少し遅れを持っていますが、お楽しみいただけます、あなた今日は伝説です:) – davidxxx
私は、あなたが参照した投稿が次の行を使用しているという事実のために、正しい答えとしてこれを削除することにしました:var weekNo = Math.ceil((((d - yearStart)/ 86400000)+ 1)/ 7);ここで "d"も日付ですが、それは算術演算で使用されていますが、そのコードを使用すると驚くことはありません。まったく同じエラーを返します。 –
私はあなたが正しい答えを与えたことを実際に指摘せずに確認したので、再度正しくマークしました。たぶんあなたの答えを変更して、私がする必要があるのは、ちょうどtdtの代わりに "return"行に "tdt.valueOf()"を使うことだけです。再度、感謝します。 –