Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialcyber voyager
8,859 PointsDifference between length and size?
What is the difference between those two? I searched for it but I didn't found any solid?
2 Answers
Iain Simmons
Treehouse Moderator 32,305 Pointslength
is a property available on arrays (and strings), size
is a property available on Set
objects (i.e. those created with new Set()
).
If you follow along in the video or workspaces and then log out the length
of the set to the console, you'll see it doesn't give you the same value as the size
, because it doesn't exist.
console.log('classroom.length:', classroom.length);
// undefined
Andres Ramirez
18,094 PointsHello Stavros!
Length will give you the numbers of items in an array. For example:
Return the length of an array:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.length;
*** The result will be: 4 ***
Size... in the following code if you click the button, you will also get a return of 4, because JavaScript makes the browser only select 4 from the list of 7.
<!DOCTYPE html>
<html>
<body>
<select id="mySelect" size="1">
<option>Cat</option>
<option>Dog</option>
<option>Horse</option>
<option>Elephant</option>
<option>Mouse</option>
<option>Fish</option>
<option>Cow</option>
</select>
<p>Click the button to change the number of visible options in the dropdown list.</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
document.getElementById("mySelect").size = "4";
}
</script>
</body>
</html>
```html
cyber voyager
8,859 PointsI didn't understand it very well but thanks for the reply.
Iain Simmons
Treehouse Moderator 32,305 PointsSorry. but the size
property of a select
HTML element is a completely different thing to what this video and course/workshop is about…
Josh Renaud
168 PointsJosh Renaud
168 PointsWhy didn't the creators of ES2015 just use Array's
length
syntax with Set()? Why create a different property name for what is essentially the same thing?