Few tips on JavaScript – Part II

This blog is a continuation of my last posting.

Solve the pass by reference problem in JavaScript
Many of us has come across the pass by reference problem in JavaScript array. we have simply assign one array to another array and any modification in one array reflects both the arrays and we bang our head where it is got changed.

var myArray=["test","nice","great"];
var changedArray=myArray;
changedArray[1]="chnagedValue";
console.log(myArray);
console.log(changedArray);

Continue reading

Advertisements

Few tips on JavaScript – Part I

Properties in double quotes

var myArray=["test","xyz","great"];
console.log("MyArray Length (Without Quotes)="+myArray.length);
console.log("MyArray Length (With Quotes)="+myArray["length"]);

Output
MyArray Length (Without Quotes)=3
MyArray Length (With Quotes)=3

Description
As we know that we can access Array properties by array name with dot notation. But we also can access the array properties through the array square bracket within the quote. The array operator (square brackets) is also used for accessing the array’s properties (arrays are also objects in JavaScript) .So we can access the array length property within the quotes in the array square bracket. Continue reading

Ways to include different video formats in different browsers and mobile devices

Introduction:

First of all my hearty thanks to Corinne Ducusin, one of the reader of my Tip How to play multiple videos in a loop using HTML5 and JavaScript. She is the person, who anyway encouraged me to write this post.

Yesterday I received an email from her, which includes a query, “how can we include the different formats of same video file to play it in different browsers”.

We all know that all browsers do not support same media formats of videos. So it’s a best practice to include different formats of videos to play it in different kind of browsers and devices. The browser will detect the supported format automatically and play that video file.

Description:

As per that post, videos were declared in an array to play them in a loop using HTML5.
var videoSource = new Array();
videoSource[0]=’video/video.m4v’;
videoSource[1]=’video/BigBuck.m4v’;

So now the question is, how can we include the other formats for the same video? If we declare the array like below, will it work? Continue reading

Using WinJS.Promise.Join-Executing a task after others finishes

Introduction:
WinJS.Promise.join is a method being exposed by the Promise object to deal with multiple promise objects execution.

Scenario:
This is a live scenario when I have received a task which will call a set of web services and perform certain action after the completion of all web services execution in an asynchronous mode.

Solution:
HTML file content Continue reading

Start – Stop Magic in WinJS.Application Object

Introduction:
Start and Stop methods of WinJS.Application object explaining their functionality as by the names suggested.

Initial expectation:
These methods are responsible for the starting and stopping of the application, since we usually see them added to the default templates.

My experiment :
default.html file Content


  <body>
    <span id="deSpan" style="font-size:70px;"></span>
</body>

Continue reading

Conversion of speech to text in Android devices using PhoneGap

Introduction:
Speech to text conversion is the mechanism to translate the spoken words into text. It is also known as automatic speech recognition. Whereas Android provides the native functionality to recognize the speech and convert the same to text. We just need to invoke the native module to fulfill our task.

Description:
While working with voice to text conversion in Android using PhoneGap I came across SpeechRecognizer plugin.It is very easy to integrate in PhoneGap application and also helps us to recognize the speech and convert the same to text in json array. So bellow are the steps to integrate this plugin with Android using PhoneGap. Continue reading

WinJS.Promise – My Experiment to create some delay using loop

Intoduction:
WinJS.Promise is a class, which supports the asynchronous programming model. Upon the execution, program control executes the promise class and proceeds to the subsequent statement to execute. But it keeps track of the execution point to which control needs to get back after the promised function finished its execution.
A question was banging my head, whether I can create my own delay to the promise object and invoke Then/Done.

Description:
I tried 2 kind of exercises. But in both the exercise I had the HTML page common.

Exercise #1
Used the below code to create a delay by executing a long loop in an external method and returning a promise object from it. So that on completion, I can call Then method to do some task. Continue reading