In nfn neil's solution he made use of the fact that when arrays are "added" to a string they are converted into a string first, using their built-in method toString().
As your object has members of different types (strings and arrays), this approach works very well. However, if you want to have more control on how to concatenate your arrays then you will have to put in a bit more work:
<ol id="sampleSection"></ol>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script>
var myOwnObject = { car1: 'Toyota', car2: 'Honda', car3: 'BMW', car4: ['Subaru', 'Nissan', 'Lambo', 'Jaguar'] };
$.each(myOwnObject, function (index, item) {
$("<li>")
.html($.isArray(item)
?item.join('<your separator>') // arrays
:item) // strings
.appendTo($("#sampleSection"));
});
</script>
Instead of the item.join() function you could do an item.map(function(itm,idx){return idx+'. '+itm;}-construct with the possibility of weaving in the index position of each element.
for(var key in myOwnObject){ console.log(myOwnObject[key]) }