JavaScript(D3.js)を使ってWebページのpタグに配列のすべての値を表示する方法
配列のすべての値をpタグで表示する方法
JavaScriptで配列のすべての値をWebページ上のpタグとして表示したい場合は、D3.jsの .data(anyArrayObject) メソッドを利用するのが便利です。D3.jsはデータとDOM要素を結びつける(データバインディング)ためのライブラリで、data() で配列を渡し、enter() で要素を追加することで、配列の要素数に応じたpタグを自動的に生成できます。
以下に具体的なコード例を示します。
コード例
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script src="https://d3js.org/d3.v5.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fontawesome/4.7.0/css/font-awesome.min.css">
</head>
<body>
<script>
const arrayValues = [1000000001, "John", "Smith", 100, 200, 3000]
var originalData = d3.select("body").selectAll("p")
.data(arrayValues)
.enter()
.append("p")
.text(function(allValuesOfArray){
console.log(allValuesOfArray + " ");
return allValuesOfArray;
})
</script>
</body>
</html>このコードでは、数値と文字列が混在する配列 arrayValues を用意し、d3.select("body").selectAll("p") でbody内のp要素を選択対象としています。その後 .data() で配列をバインドし、.enter() と .append("p") によって、配列の要素ごとにpタグが新しく追加されます。各pタグのテキストには .text() を使って配列の値が設定され、同時にコンソールにも値が出力されます。
プログラムの実行方法
上記のプログラムを実行するには、ファイルを anyName.html(または index.html)という名前で保存します。次に、VS Codeエディターでそのファイルを右クリックし、「Open with Live Server」を選択してブラウザで開いてください。
出力結果
プログラムを実行すると、ブラウザ上に配列の各要素が個別のpタグとして次のように表示されます。

表示される内容は以下のとおりです。
1000000001
John
Smith
100
200
3000
このように、D3.jsのデータバインディング機能を使えば、配列の要素数が変わってもコードをほとんど修正することなく、動的にpタグを生成してすべての値を表示できます。数値・文字列を問わず対応できるため、リスト表示やデータの可視化の前処理など、さまざまな場面で活用できます。
-
JavaScriptで関数の実行結果をHTMLとして表示する方法
関数の結果をHTMLとして表示するには?JavaScriptで関数の実行結果をHTMLとして画面に表示したい場合は、document.getElementById().innerHTML を使います。このプロパティに文字列や計算結果を代入することで、指定した要素の中身を動的に書き換えることができます。innerHTMLはDOM操作の基本であり、ユーザーの操作に応じてリアルタイムに画面を更新したい場合によく利用されます。サンプルコード以下は、ページ内にあるテキストボックス(input type=text)の数をカウントし、その結果をHTMLとして表示するコード例です。<!DOCTYPE h
-
JavaScriptでWebページのvideoタグ(動画)を非表示にする方法
はじめに Webページに、次のようなサンプルのvideoタグが設置されている場面を想定してみましょう。 <video class="hideVideo" width="350" height="255" controls> <source src="" id="unique_video_id"> こちらでは動画を再生できません...... </video> Webページ上の動画を非表示にしたい場合は、yourVariableName.style