回答編集履歴
6
answer
CHANGED
@@ -64,7 +64,7 @@
|
|
64
64
|
x = values.join();
|
65
65
|
```
|
66
66
|
→「join()」とする必要があります。
|
67
|
-
|
67
|
+
また、各々のif~else内でvar xとするよりは、それ以前で1回でまとめて var x = '';というように定義しておいた方がよいと思います。
|
68
68
|
|
69
69
|
```
|
70
70
|
if(yasumi === '***' && day == '1'){
|
5
answer
CHANGED
@@ -85,13 +85,13 @@
|
|
85
85
|
[仕様]
|
86
86
|
1. Googleカレンダーに登録されている関数実行当日のイベントのタイトルをLINE通知する。
|
87
87
|
2. 通知対象イベント:必要条件=終日イベント(時間指定イベントは通知対象外とする)。かつ、通知の判断にあたっては、下記3,4,5の内容を考慮すること。
|
88
|
-
3. 関数実行日が月曜日、水曜日、木曜日である場合のみ通知する。それ以外の場合は4に該当するか否かかわらず通知しない。
|
88
|
+
3. 関数実行日が月曜日、水曜日、木曜日である場合のみ通知する。それ以外の場合は4に該当するか否にかかわらず通知しない。
|
89
|
-
4. 通知対象イベントに指定した文字(「※」)が含まれている場合は、曜日に応じて、下記のメッセージを
|
89
|
+
4. 通知対象イベントのタイトルに指定した文字(「※」)が含まれている場合は、曜日に応じて、下記のメッセージをタイトルに付加して通知する。
|
90
90
|
月曜日:「[ゴミの日です]」
|
91
91
|
水曜日:「[資源ゴミの日です]」
|
92
92
|
木曜日:「[ゴミの日です]」
|
93
|
-
5. 3に該当する曜日であっても、通知対象イベントに指定した文字が含まれていない場合は、通知しない。
|
93
|
+
5. 3に該当する曜日であっても、通知対象イベントのタイトルに指定した文字(「※」)が含まれていない場合は、通知しない。
|
94
|
-
6. カレンダー上、同じ日に2つ以上イベントが登録されている場合は、1つのイベントごとに通知対象イベントであるかどうか判断した上で通知を発行する。
|
94
|
+
6. カレンダー上、同じ日に2つ以上イベントが登録されている場合は、1つのイベントごとに通知対象イベントであるかどうか判断した上で1つずつ通知を発行する。
|
95
95
|
|
96
96
|
```
|
97
97
|
function notifyGarbageCollection() {
|
@@ -120,7 +120,7 @@
|
|
120
120
|
|
121
121
|
const title = event.getTitle();
|
122
122
|
// 通知メッセージ
|
123
|
-
let msg = title +
|
123
|
+
let msg = title + ' ';
|
124
124
|
|
125
125
|
// 取得したイベントが終日イベントでない場合はスキップ。
|
126
126
|
if(event.isAllDayEvent() === false) return;
|
4
answer
CHANGED
@@ -72,7 +72,7 @@
|
|
72
72
|
if(yasumi.indexOf('***') !== -1 && day == 1){
|
73
73
|
```
|
74
74
|
- xはmatch関数の結果を受け取っているので配列となっています。yasumiは配列xをjoin()で連結しているので、カンマで区切られた文字列になっています。
|
75
|
-
したがって、yasumiという文字列の中に「***」が**含まれているかどうか**は比較演算子===では正確には判定できません。 代わりに、indexOfで判定するやり方があります。
|
75
|
+
したがって、yasumiという文字列の中に「`***`」が**含まれているかどうか**は比較演算子===では正確には判定できません。 代わりに、indexOfで判定するやり方があります。
|
76
76
|
※(「***」のところは実際に使用する文字に変えてください。アスタリスクが含まれる文字では正確に動きません)
|
77
77
|
|
78
78
|
- getDay()関数は数字(Number型)を返すので 比較先は文字列('1')ではなく、数字(1)にする必要があります。
|
3
修正
answer
CHANGED
@@ -84,9 +84,8 @@
|
|
84
84
|
(質問者さんの希望動作と異なるかもしれませんがあくまで「例」なのでご了承ください)
|
85
85
|
[仕様]
|
86
86
|
1. Googleカレンダーに登録されている関数実行当日のイベントのタイトルをLINE通知する。
|
87
|
-
2. 通知対象イベント:終日イベント
|
87
|
+
2. 通知対象イベント:必要条件=終日イベント(時間指定イベントは通知対象外とする)。かつ、通知の判断にあたっては、下記3,4,5の内容を考慮すること。
|
88
88
|
3. 関数実行日が月曜日、水曜日、木曜日である場合のみ通知する。それ以外の場合は4に該当するか否かかわらず通知しない。
|
89
|
-
|
90
89
|
4. 通知対象イベントに指定した文字(「※」)が含まれている場合は、曜日に応じて、下記のメッセージをイベントタイトルに付加して通知する。
|
91
90
|
月曜日:「[ゴミの日です]」
|
92
91
|
水曜日:「[資源ゴミの日です]」
|
2
修正
answer
CHANGED
@@ -91,7 +91,7 @@
|
|
91
91
|
月曜日:「[ゴミの日です]」
|
92
92
|
水曜日:「[資源ゴミの日です]」
|
93
93
|
木曜日:「[ゴミの日です]」
|
94
|
-
5. 3に該当する曜日であって、通知対象イベントに指定した文字が含まれていない場合は、
|
94
|
+
5. 3に該当する曜日であっても、通知対象イベントに指定した文字が含まれていない場合は、通知しない。
|
95
95
|
6. カレンダー上、同じ日に2つ以上イベントが登録されている場合は、1つのイベントごとに通知対象イベントであるかどうか判断した上で通知を発行する。
|
96
96
|
|
97
97
|
```
|
1
answer
CHANGED
@@ -61,11 +61,10 @@
|
|
61
61
|
```
|
62
62
|
x = values.join;
|
63
63
|
↓
|
64
|
-
|
64
|
+
x = values.join();
|
65
65
|
```
|
66
66
|
→「join()」とする必要があります。
|
67
|
-
|
67
|
+
元のままだとこの時点ではxはグローバル変数になってしまっているので、直近でvar x = '';というように定義しておいた方がよいと思います。
|
68
|
-
|
69
68
|
|
70
69
|
```
|
71
70
|
if(yasumi === '***' && day == '1'){
|