0

次のオブジェクトに含まれるプロパティの数を把握しようとしています。明らかに 2 はわかりますが、動的に知る必要があります。

var test = $.parseJSON('{ "ddSize": "Size", "ddColor": "Color" }');

私が試してみると:

var mylen = test.length;

.length は未定義です。このオブジェクトのプロパティの数は変更されます。1の場合もあれば、2または3の場合もありますが、テスト方法がわかりません。

4

1 に答える 1

3

これは JavaScript JSON オブジェクトです。length機能は利用できません。

純粋な JavaScript を使用した最初のソリューション:

var data = $.parseJSON('{ "ddSize": "Size", "ddColor": "Color" }'); 
var keys = [];
for (key in data) {
  keys.push(key);
}
// numberOfKeys should equal to 2
var numberOfKeys = keys.length;

jQueryを好む場合の2番目の解決策:

var data = $.parseJSON('{ "ddSize": "Size", "ddColor": "Color" }');
var keys = [];
$.each(data, function(key, value) {
  keys.push(key)
});
// numberOfKeys should equal to 2
var numberOfKeys = keys.length;

jQuery.each 関数のドキュメント

于 2012-07-06T21:36:57.977 に答える