Backbone.jsのモデルクラス③

今回はhas関数です。
has関数は、Model内に引数に渡した変数名の値があるかどうかを判定し、true/falseを返却します。
変数が定義されていて、値が設定されていればtrue、
変数が定義されていない、定義されているがnull、定義されているがundefinedの場合はfalseを返却するようです。

以下にソースコードを示します。

<html>
<head>
<script type="text/javascript" src="../js/jquery-1.10.1.js"></script>
<script type="text/javascript" src="../js/underscore.js"></script>
<script type="text/javascript" src="../js/backbone.js"></script>
<script type="text/javascript">
var Player = Backbone.Model.extend({
	defaults : {
		"tel" : "0120123123"
	}
});

$(document).ready(function() {
	player = new Player({
		name : "田中一郎",
		rank : null,
		birthdate : undefined,
		address : ""
	});
	
	$("#contents").html(
			"player has name : " + player.has("name") + 
			"<br/>" +
			"player has no : " + player.has("no") +
			"<br/>" +
			"player has rank : " + player.has("rank") +
			"<br/>" +
			"player has birthdate : " + player.has("birthdate") +
			"<br/>" +
			"player has mail : " + player.has("mail") +
			"<br/>" +
			"player has tel : " + player.has("tel") +
			"<br/>" +
			"player has address : " + player.has("address")
			);
});
</script>
</head>
<body>
<div id="contents">
</div>
</body>
</html>

結果は以下のようになります。

player has name : true
player has no : false
player has rank : false
player has birthdate : false
player has mail : false
player has tel : true
player has address : true