What you read on the w3c is the standard for HTML 4.01 and for XHTML. However, in HTML 5 a select may have 0 options.
Regardless, these are simply the standards. What any given select has in the way of options in actual practice may happen to vary from 0 to whatever and although there are perhaps better ways, you can test the length of its options node list in just the way you propose.
Whenever you are in doubt of such a thing, you can always try it out. For example (valid HTML 5):
Code:
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<script type="text/javascript">
jQuery(function($){
alert($('select')[0].options.length);
});
</script>
</head>
<body>
<select>
</select>
</body>
</html>
Alerts '0'.
Bookmarks