JSON 関数ファイル


JSONの一般的な用途は、Webサーバからデータを読み、Webページにデータを表示することです。

この章では、関数ファイルを使用したJSONデータの入力方法を、44つ簡単なステップに分けて解説します。


JSON 例

この例は、myTutorials.jsからメニューを読んで、webページにそのメニューを表示します:

<div id="id01"></div>

<script>
function myFunction(arr) {
    var out = "";
    var i;
    for(i = 0; i<arr.length; i++) {
        out += '<a href="' + arr[i].url + '">' + arr[i].display + '</a><br>';
    }
    document.getElementById("id01").innerHTML = out;
}
</script>

<script src="myTutorials.js"></script>

Try it yourself »


例の説明

1: オブジェクトの配列を作成します。

オブジェクト配列を宣言するために配列リテラルを使用します。

各オブジェクトに2つのプロパティdisplayurlを設定します。

配列名をmyArrayとします:

myArray

var myArray = [
{
"display": "JavaScript Tutorial",
"url": "http://www.w3schools.com/js/default.html"
},
{
"display": "HTML Tutorial",
"url": "http://www.w3schools.com/html/default.html"
},
{
"display": "CSS Tutorial",
"url": "http://www.w3schools.com/css/default.html"
}
]

2: 配列を表示するJavaScript関数を作成します。

配列オブジェクトをループし、HTMLリンクとしてコンテンツを表示する関数myFunction()を作成します:

myFunction()

function myFunction(arr) {
    var out = "";
    var i;
    for(i = 0; i < arr.length; i++) {
        out += '<a href="' + arr[i].url + '">' + arr[i].display + '</a><br>';
    }
    document.getElementById("id01").innerHTML = out;
}

myArrayをアーギュメントとしてmyFunction()をコールします:

myFunction(myArray);

Try it yourself »

3: 配列変数の代わりにアーギュメントとして配列リテラルを使用します:

アーギュメントとして配列リテラルmyFunction()をコールします:

Calling myFunction()

myFunction([
{
"display": "JavaScript Tutorial",
"url": "http://www.w3schools.com/js/default.html"
},
{
"display": "HTML Tutorial",
"url": "http://www.w3schools.com/html/default.html"
},
{
"display": "CSS Tutorial",
"url": "http://www.w3schools.com/css/default.html""
}
]);

Try it yourself »

4: 外部のjsファイルに関数コールを設定します

ファイル名がmyTutorials.jsであるこれをコールする関数を設定します::

myTutorials.js

myFunction([
{
"display": "JavaScript Tutorial",
"url": "http://www.w3schools.com/js/default.html"
},
{
"display": "HTML Tutorial",
"url": "http://www.w3schools.com/html/default.html"
},
{
"display": "CSS Tutorial",
"url": "http://www.w3schools.com/css/default.html""
}
]);

関数コールに代えて、ページに外部スクリプトを追加します:

外部スクリプトの追加

<script src="myTutorials.js"></script>

Try it yourself »