Book Image

Learning JavaScriptMVC

By : Wojciech Bednarski
Book Image

Learning JavaScriptMVC

By: Wojciech Bednarski

Overview of this book

<p>JavaScriptMVC is a client-side, JavaScript framework that builds maintainable, error-free, lightweight applications as quickly as possible. As it does not depend on server components, it can be combined with any web service interface and server-side language.<br /><br />"Learning JavaScriptMVC" will guide you through all the framework aspects and show you how to build small- to mid-size well-structured and documented client-side applications you will love to work on.<br /><br />This book starts from JavaScriptMVC installation and all its components are explained with practical examples. It finishes with an example of building a web application. You will learn what the JavaScriptMVC framework is, how to install it, and how to use it efficiently.<br /><br />This book will guide you on how to build a sample application from scratch, test its codebase using unit testing, as well as test the whole application using functional testing, document it, and deploy the same. After reading Learning JavaScriptMVC you will learn how to install the framework and create a well-structured, documented and maintainable client-side application.</p>
Table of Contents (13 chapters)

Language helpers


Language helpers are a set of jQuery plugins. They are described in the following sections.

$.Object

The $.Object plugin contains the following three useful methods:

  • same: It compares two objects

  • subset: It checks if an object is a set of another object

  • subsets: It returns the subsets of an object

same

The same method can compare two objects. It supports nested objects. We can also specify if the comparison is case sensitive or if we can skip a particular property comparison.

Let's paste the following code into the jquerymx_object.js file:

steal(
    'jquery/lang/object',
    function ($) {
        window.object_1 = {
            property_1: 'foo',
            property_2: {
                property_1: 'bar',
                property_2: {
                    property_1: 'Hello JMVC!'
                }
            }
        };

        window.object_2 = {
            property_1: 'foo',
            property_2: {
                property_1: 'bar',
                property_2: {
   ...