2016-06-18 20 views
0

私はHTMLとjavascriptを使って簡単なウェブゲームをプレイしています。 配列やライブラリを使用して、プリセット値を「マップ要素」として与えます。javascriptの配列が 'null'として返されます

配列の値を呼び出すには、このように書きます:

array = [a,b,c,d] 
    blah.innerHTML = array[1] // returns "b" 

または

lib = {a:"cat",b:"dog",c:[a,b,c,d]} 
    blah.innerHTML = lib.c.1(or lib.c[1]) // returns "b" 

それいけませんか?

だけでなく、それは確かに働いていたが、それはもう...知っている可能性がありますされません

(私はそれを翻訳しなければならなかった)「ヌル値がnullである」のような何かを言うことによって、エラーとして返しますどうして?

使用ソフトウェア:IE8( "閉鎖社会" のいくつかの種類ではIM)、Dreamweaverの

+1

は 'lib.cあるべきスローします宣言しない限り、[1]'、また、それは '[ 'A'、 'B'、 'C​​'、 'D']は'や '[ a、b、c、d] '? –

答えて

3

a,b,c,dstringsしている場合、あなたがそれらをquote必要があります。

lib = {a:"cat",b:"dog",c:['a','b','c','d']} 

あなたは、単一の値を囲む必要があります値がstringであるため二重引用符で囲んでください。

1

あなたは変数ではなく、文字列の配列を作成しています。あなたの例のような、あなたが前に変数を定義したので、場合に動作します:最初のスニペットarray

var a = "a", b="b"; 

0

をSO array[1]要素を返しますArray

array = [a,b,c,d] 
    blah.innerHTML = array[1] // returns "b" 

javascriptのですインデックス1で。

このスニペットでは、libObject 0123ですabc[a,b,c,d]dいくつかの変数を参照するようにしようとします:cは注意がlib

lib = {a:"cat", 
     b:"dog", 
     c:['a','b','c','d']} 
    var _c = lib.c // will give ['a','b','c','d'] 
var blah = document.getElementById("blow") // id of a DOM element 
blah.innerHTML = _c[1] // returns "b" 

の鍵です。それは誤り

JSFIDDLE

関連する問題