alienHRNの訓練日記

IT業界初心者で勉強中。

20200803 授業メモ Mathオブジェクト Dateオブジェクト

〇組み込みオブジェクト

プロパティ
メソッド処理
 

f:id:alienHRN:20200803160312p:plain

組み込みオブジェクト

console.log('問題12-3①');
console.log(Math.min(99468, -390));

console.log('問題12-3②');
以上3未満の疑似乱数をコンソールに表示せよ
var randomNum = Math.random();
//0以上1未満の乱数を生成して変数に代入
//代入する形
console.log(randomNum);

console.log('0以上3未満の乱数');
randomNum = randomNum * 3;
//=randomNum*=3
//3未満を表示させるためにはこのような書き方をする。
//不等号を使うと思ったが違った・・。
console.log(randomNum);


console.log('問題12-3③');
01、2の整数をランダムにコンソールに表示せよ
randomNum = Math.floor(randomNum);
console.log(randomNum);




console.log('指名プログラムの作成');
//名簿を配列で管理
var nameList = [
  '田中',//0
  '佐藤',//1
  '鈴木',//2
]

console.log('名前を出力');
console.log(nameList[0]);
//部屋番号をランダムな0、1、2にすれば
//名前がランダムに表示される。
console.log('乱数生成');
randomNum = Math.floor(Math.random() * nameList.length);
console.log('名前をランダムに表示');
console.log(nameList[randomNum]);




function displayAnswer1()
//「面積」ボタンがクリックされたときに関数内ブロックを実行
{
  console.log('面積');
  var answer;//面積を後で代入
  var num1 = document.getElementById('num1').value;
  var num2 = document.getElementById('num2').value;
  //ユーザが入力した半径を代入
  // ドキュメントオブジェクト・・・ページを管理しているオブジェクト


  console.log(num1);
  console.log(num2);
  //外部から取得した値は1律文字列型になる
  // コンソール表示が黒(文字列型)
  // ※青(数値型)
  answer = num1 * num2 * Math.PI;
  // 面積を計算して代入
  console.log(answer);
  document.getElementById('display1').innerHTML = answer;
}



問題12 - 2 p164
function displayAnswer2()
//「円周」ボタンがクリックされたときに関数内ブロックを実行
{
  console.log('円周');
  var answer;
  var num1 = document.getElementById('num1').value;
  var num2 = document.getElementById('num2').value;
  console.log(num1);
  console.log(num2);
  answer = (parseInt(num1) + parseInt(num2)) * Math.PI;

  console.log(answer);
  document.getElementById('display1').innerHTML = answer;
}




function displayName() {
  console.log('名簿指名');
  var nameList = [
    '田中',
    '佐藤',
    '鈴木',
  ];
  var result = Math.floor(Math.random() * nameList.length);
  console.log(nameList[result]);
  console.log(result);
  document.getElementById('display2').innerHTML = nameList[result];
}




〇Dateオブジェクト

console.log('1回目の出力');
var today = new Date();
//変数todayを宣言して右辺を代入
//new演算子:新しくオブジェクトを作成
// new演算子の後に続く
// コンストラクタを呼び出す
// コンストラクタ(建設者)
//この場合「Date()」がコンストラク
//新しくオブジェクトを作成する際に1度だけ呼び出される特殊なメソッド
//「オブジェクト名()」で記述する。
//new演算子とコンストラクタによってインスタンス(オブジェクトのコピー)が生成される
// コンストラクタが指定オブジェクトの内容をインスタンスにコピー(建設)する。
// Dateのコンストラクタは引数で指定した日時をインスタンス内に設定する
// 引数なしの時はコンストラクタ実行時の日時をインスタンスに設置する

console.log(today);
var date1 = new Date('2018/1/1 12:00');
console.log(date1);
var date2 = new Date(201801120);
// コンストラクタの引数
// 第1引数:年
// 第2引数:経過月を0-11で指定(通常の月と違う)
// 第3引数:日付(省略可)
// 第4引数:時(省略可)
// 第5引数:分(省略可)
console.log(date2);
var date3 = new Date(1514775600000);
console.log(date3);
// コンストラクタの引数
// 1970年1月1日0時0分0秒からの経過ミリ秒(タイムスタンプ)で日時を指定



console.log('2回目の出力');
console.log(date1.getFullYear());
// 2018/1/1/12時を管理
console.log(date1.getMonth());
// 変数Date1が管理する日時の経過を繰り返す
console.log(date1.getDate());
console.log(date1.getDay());
// Date1.getDate()
// date1が管理する日時の曜日番号を返す
0日曜日
1月曜日
2火曜日
3水曜日
4木曜日
5金曜日
6土曜日
console.log(date1.getTime());
// gate1.getTime()
// 変数date1が管理するタイムスタンプを返す




console.log('3回目の出力');
console.log(date1.setFullYear(2000));
console.log(date1);
// date1.setFullYear(2000)
// 引数で指定した年に変更する
// 戻り値:変更後日時のタイムスタンプ
// 戻り値を使わない時は出力・代入処理をせずにそのまま捨てて構わない。
console.log('4回目の出力');
console.log(date1.toString());
console.log(date1.toLocaleString());