JSFiddle - React, Tailwind, and code Playground
HTML
<script src="//knockoutjs.com/downloads/knockout-2.2.1.js"></script>
<div>
<h1 data-bind="text: name"></h1>
<ul data-bind="foreach: items">
<li data-bind="text: value() + ': ' + name()"></li>
</ul>
<div>
<strong>data.items.length == </strong>
<span data-bind="text: items.length"></span>
<span data-bind="text: 'Type of Items:' + typeof items"></span>
<span data-bind="text: 'Is An array ?:' + Array.isArray(items)"></span>
</div>
<div>
<strong>data.items().length == </strong>
<span data-bind="text: items().length"></span>
<span data-bind="text: 'Type of Items:' + typeof items()"></span>
<span data-bind="text: 'Is An array ?:' + Array.isArray(items())"></span>
</div>
</div>
JavaScript
var data = {
name: ko.observable("Test"),
items: ko.observableArray([
{ name: ko.observable("First Thing"), value: ko.observable(1) },
{ name: ko.observable("Second Thing"), value: ko.observable(2) },
{ name: ko.observable("Third Thing"), value: ko.observable(3) }
])
};
ko.applyBindings(data, document.getElementsByTagName("div")[0]);