2020年03月26日

HTMLの表示直後にJavaScriptを実行

HTMLの表示直後にJavaScriptを実行したい場合のサンプルです。

index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>title</title>
</head>
<body>
<button id="myButton" type="button">クリック</button>
<script src="script/myscript.js" charaset ="utf-8"></script>
</body>
</html>
myscript.js
/* script/myscript.js */

/* ページ読み込み後の処理 */
document.addEventListener('readystatechange', (event) => {
if (document.readyState == 'complete') {
// ここに処理を書く
alert(`ページの読み込み完了。\nreadystate: ${document.readyState}`);
}
});

/* ボタンをクリックしたときの処理 */
document.querySelector('#myButton').addEventListener('click', () => {
alert('クリックした。');
});

続きを読む
タグ:JavaScript
posted by Hiro at 00:15| Comment(0) | プログラム

2020年03月23日

C# 配列を使って配列の要素を検索する

LINQの書き方について。
配列を使って配列の要素を検索するパターンについて書きました。
using System;
using System.Linq;

namespace MyApp
{
class Program
{
static void Main(string[] args)
{
// 関東地方リスト
string[] kantouRegion = { "東京都", "神奈川県", "埼玉県", "千葉県", "群馬県", "栃木県", "茨城県" };

// ユーザの出身地リスト
string[] userBirthplaceArray1 = { "東京都", "群馬県", "千葉県" };
string[] userBirthplaceArray2 = { "東京都", "愛知県", "大阪府" };
string[] userBirthplaceArray3 = { "北海道", "福岡県", "沖縄県" };

// 少なくとも1人のユーザの出身地が関東地方
Console.WriteLine(userBirthplaceArray1.Any(w => kantouRegion.Any(t => t == w))); // True
Console.WriteLine(userBirthplaceArray2.Any(w => kantouRegion.Any(t => t == w))); // True
Console.WriteLine(userBirthplaceArray3.Any(w => kantouRegion.Any(t => t == w))); // False
Console.WriteLine("");

// すべてのユーザの出身地が関東地方
Console.WriteLine(userBirthplaceArray1.All(w => kantouRegion.Any(t => t == w))); // True
Console.WriteLine(userBirthplaceArray2.All(w => kantouRegion.Any(t => t == w))); // False
Console.WriteLine(userBirthplaceArray3.All(w => kantouRegion.Any(t => t == w))); // False
Console.WriteLine("");

// 人名漢字リスト
string[] kanjiArray = { "山", "一", "郎" };

// ユーザの名前リスト
string[] userNameArray1 = { "山田一郎", "山崎一郎", "山寺一郎" };
string[] userNameArray2 = { "山田一郎", "岩崎公太", "後藤四太" };
string[] userNameArray3 = { "森田一介", "佐藤三太", "後藤四太" };

// 少なくとも1人のユーザの名前に、人名漢字リストにあるすべての漢字が使われている
Console.WriteLine(userNameArray1.Any(w => kanjiArray.All(t => w.Contains(t)))); // True
Console.WriteLine(userNameArray2.Any(w => kanjiArray.All(t => w.Contains(t)))); // True
Console.WriteLine(userNameArray3.Any(w => kanjiArray.All(t => w.Contains(t)))); // False
Console.WriteLine("");

// すべてのユーザ名前に、人名漢字リストにあるすべての漢字が使われている
Console.WriteLine(userNameArray1.All(w => kanjiArray.All(t => w.Contains(t)))); // True
Console.WriteLine(userNameArray2.All(w => kanjiArray.All(t => w.Contains(t)))); // False
Console.WriteLine(userNameArray3.All(w => kanjiArray.All(t => w.Contains(t)))); // False
}
}
}
タグ:C# LinQ
posted by Hiro at 23:26| Comment(0) | プログラム