Do you know that? 3.7M+ registered client businesses on Upwork-Elance next

Contact Email: teammmrem@yahoo.com

<< All Upwork (oDesk) and Elance Tests << Upwork (oDesk) test answers << Web Development category

Test answers for Javascript Test 2016

(88 / 15, CL) Last updated: February 9
Upwork (oDesk) • Web Development
Questions and answers are regularly updated. Answered and not answered tests questions.

This helps getting job: Hundreds of (cover letter examples , interview questions , profile samples ) • Earn on Upwork (oDesk)
Job assistance: jobs popularityfreelance rates

Popular test answers: HTML, .Net, CSS, English, SEO, Photoshop, iOS, Java, Android, Ruby, Python, JavaScript

See all 6 tests answers updated

Find Upwork (oDesk) and Elance test answers on this website:



Collapse | Expand

88 Answered Test Questions:

1. Which of the following is true about setTimeOut()?

Answers:

• The statement(s) it executes run(s) only once.

• It pauses the script in which it is called.

• clearTimeOut() won't stop its execution.

• The delay is measured in hundredths of a second.

• It is required in every JavaScript function.

2. How can the operating system of the client machine be detected?

Answers:

• It is not possible using JavaScript.

• Using the navigator object

• Using the window object

• Using the document object

• None of these.

3. Which of the following prints "AbBc"?

Answers:

• var b = 'a'; var result = b.toUpperCase() + 'b' + 'b'.toUpperCase() +'C'['toLowerCase'](); alert(result);

• var b = 'a'; var result = b.toUpperCase() + 'b' + 'b'.toUpperCase() +'c'['toUpperCase'](); alert(result);

• var b = 'a'; var result = b.toUpperCase() + b + 'b'.toUpperCase() +'C'['toLowerCase'](); alert(result);

• var b = 'a'; var result = b.toUpperCase() + 'b' + 'b'.toUpperCase() +C; alert(result);

4. Which of the following descriptions is true for the code below?

var object0 = {};
Object.defineProperty(object0, "prop0", { value : 1, enumerable:false, configurable : true });
Object.defineProperty(object0, "prop1", { value : 2, enumerable:true,  configurable : false });
Object.defineProperty(object0, "prop2", { value : 3 });
object0.prop3 = 4;

Answers:

• Object 'object0' contains 4 properties. Property 'prop2' and property 'prop3' are available in the for...in loop. Property 'prop0' and property 'prop1' are available to delete.

• Object 'object0' contains 4 properties. Property 'prop1' and property 'prop2' are available in the for...in loop. Property 'prop2' and property 'prop3' are available to delete.

• Object 'object0' contains 4 properties. Property 'prop0' and property 'prop2' are available in the for...in loop. Property 'prop0' and property 'prop2' are available to delete.

• Object 'object0' contains 4 properties. Property 'prop1' and property 'prop3' are available in the for...in loop. Property 'prop0' and property 'prop3' are available to delete.

5. Performance-wise, which is the fastest way of repeating a string in JavaScript?

Answers:

• String.prototype.repeat = function( num ) { return new Array( num + 1 ).join( this ); }

• function repeat(pattern, count) { if (count < 1) return ''; var result = ''; while (count > 0) { if (count & 1) result += pattern; count >>= 1, pattern += pattern; } return result; }

• String.prototype.repeat = function(count) { if (count < 1) return ''; var result = '', pattern = this.valueOf(); while (count > 0) { if (count & 1) result += pattern; count >>= 1, pattern += pattern; } return result; };

• String.prototype.repeat = function (n, d) { return --n ? this + (d || '') + this.repeat(n, d) : '' + this };

6. Consider the following variable declarations:
 
var a="adam"
var b="eve"

Which of the following would return the sentence "adam and eve"?

Answers:

• a.concatinate("and", b)

• a.concat("and", b)

• a.concatinate(" and ", b)

• a.concat(" and ", b)

7. Which of the following code snippets will correctly split "str"?

Answers:

• <script> var str = 'something -- something_else'; var substrn = str.split(' -- '); </script>

• <script> var str = 'something -- something_else'; var substrn = split.str(' --- '); </script>

• <script> var str = 'something -- something_else'; var substrn = str.split(' - ',' - '); </script>

• <script> var str = 'something -- something_else'; var substrn = split.str(' - ',' - '); </script>

8. Which object can be used to ascertain the protocol of the current URL?

Answers:

• document

• window

• history

• browser

• form

• location

9. Which of the following best describes a "for" loop?

Answers:

• "for" loop consists of six optional expressions, enclosed in parentheses and separated by semicolons, followed by a statement executed in the loop.

• "for" loop consists of five optional expressions, enclosed in parentheses and separated by semicolons, followed by a statement executed in the loop.

• "for" loop consists of four optional expressions, enclosed in parentheses and separated by semicolons, followed by a statement executed in the loop.

• "for" loop consists of three optional expressions, enclosed in parentheses and separated by semicolons, followed by a statement executed in the loop.

10. Which of the following descriptions best describes the code below?

<script>
var variable1 = { fastFood: "spaghetti", length: 10 };
Object.freeze(variable1);
variable1.price = 50;
delete variable1.length;
</script>

Answers:

• Object is frozen, a property named "price" is added in the variable1 object, a property named "length" is deleted from this object. At the end of the code, the object "variable1" contains 2 properties.

• Object is frozen, a property named "price" is not added in the variable1 object, a property named "length" is deleted from this object. At the end of the code, object "variable1" contains 1 properties.

• Object is frozen, a property named "price" is added in the variable1 object, a property named "length" is not deleted from this object. At the end of the code, object "variable1" contains 1 properties.

• Object is frozen, a property named "price" is not added in the variable1 object, a property named "length" is not deleted from this object. At the end of the code, object "variable1" contains 2 properties.

11. Which of the following is not a valid HTML event?

Answers:

• ondblclick

• onmousemove

• onclick

• onblink

12. Analyze the following code snippet which uses a Javascript Regular Expression character set. What will be the output of this code?

<html>
<body>

<script type="text/javascript">
    var str = "Is this enough?";
    var patt1 = new RegExp("[^A-J]");
    var result = str.match(patt1);
    document.write(result);
</script>

</body>
</html

Answers:

• I

• Is

• s

• I,s,

13. Consider the following image definition:
<img id="logo" src="companylogo1.gif" height="12" width="12" >
Which of the following will change the image to companylogo2.gif when the page loads?

Answers:

• logo.source="companylogo2.gif"

• logo.source="companylogo1.gif"

• document.getElementById('logo').src="companylogo1.gif"

• document.getElementById('logo').src="companylogo2.gif"

14. What is the final value of the variable bar in the following code?

var foo = 9;
bar = 5;
(function() {
    var foo = 2;
    bar= 1;
}())
bar = bar + foo;

Answers:

• 10

• 14

• 3

• 7

15. Which of the following are JavaScript unit testing tools?

Answers:

• Buster.js, jQuery, YUI Yeti

• QUnit, Modernizr, JsTestDriver

• Node.js, Modernizr, Jasmine

• Buster.js, YUI Yeti, Jasmine

16. Which of the following can be used for disabling the right click event in Internet Explorer?

Answers:

• event.button == 2

• event.button == 4

• event.click == 2

• event.click == 4

17. An image tag is defined as follows:
<img id="ERImage" width="100" height="100" onmouseover="ImageChange()"  src="Image1.jpg">
The purpose of the ImageChange() function is to change the image source to Image2.jpg. Which of the following should the ImageChange() function look like?

Answers:

• document.getElementById('ERImage').src="Image1.jpg"

• document.getElementById('ERImage').src="Image2.jpg"

• document.getElementById('ERImage').style.src="Image1.jpg"

• document.getElementById('ERImage').style.src="Image2.jpg"

18. Consider the following JavaScript alert:
<script type="text/JavaScript">
function message() {
    alert("Welcome to ExpertRating!!!")
}
</script>
Which of the following will run the function when a user opens the page?

Answers:

• body onload="message()"

• body onunload="message()"

• body onsubmit="message()"

• body onreset="message()"

19. Which of the following code snippets will correctly get the length of an object?

Answers:

• <script> var newObj = new Object(); newObj["firstname"] = "FirstName"; newObj["lastname"] = "LastName"; newObj["age"] = 21; Object.size = function(obj) { var size = 0, key; for (key in obj) { if (obj.hasOwnProperty(index)) size++; } return size; }; var size = Object.size(newObj); </script>

• <script> var newObj = new Object(); newObj["firstname"] = "FirstName"; newObj["lastname"] = "LastName"; newObj["age"] = 21; Object.size = function(obj) { var size = 0, key; for (key in obj) { if (obj.hasOwnProperty(value)) size++; } return size; }; var size = Object.size(newObj); </script>

• <script> var newObj = new Object(); newObj["firstname"] = "FirstName"; newObj["lastname"] = "LastName"; newObj["age"] = 21; Object.size = function(obj) { var size = 0, key; for (key in obj) { if (obj.hasOwnProperty(length)) size++; } return size; }; var size = Object.size(newObj); </script>

• <script> var newObj = new Object(); newObj["firstname"] = "FirstName"; newObj["lastname"] = "LastName"; newObj["age"] = 21; Object.size = function(obj) { var size = 0, key; for (key in obj) { if (obj.hasOwnProperty(key)) size++; } return size; }; var size = Object.size(newObj); </script>

20. Which of the following Array methods in JavaScript runs a function on every item in the Array and collects the result from previous calls, but in reverse?

Answers:

• reduce()

• reduceRight()

• reverse()

• pop()

21. In an HTML page, the form tag is defined as follows:
<form onsubmit="return Validate()" action="http://www.mysite.com/">
The validate() function is intended to prevent the form from being submitted if the name field in the form is empty. What should the validate() function look like?

Answers:

• <script type="text/javascript"> function Validate() { if(document.forms[0].name.value == "") return true; else return false; } </script>

• <script type="text/javascript"> function Validate() { if(document.forms[0].name.value == "") return false; else return true; } </script>

• script type="text/javascript"> function Validate() { if(document.forms[0].name== "") return false; else return true; } </script>

• <script type="text/javascript"> function Validate() { if(document.forms[0].name == "") return true; else return false; } </script>

22. Which of the following code snippets changes an image on the page?

Answers:

• var img = document.getElementById("imageId"); img.src = "newImage.gif";

• var img = document.getElementById("imageId"); img.style.src = "newImage.gif";

• var img = document.getElementById("imageId"); img.src.value = "newImage.gif";

• var img = document.getElementById("imageId"); img = "newImage.gif";

23. Which of the following results is returned by the JavaScript operator "typeof" for the keyword "null"?

Answers:

• function

• object

• string

• number

24. What will be the final value of the variable "apt"?

var apt=2;
apt=apt<<2;

Answers:

• 2

• 4

• 6

• 8

• 16

25. How can a JavaScript object be printed?

Answers:

• console.log(obj)

• console.print(obj)

• console.echo(obj);

• None of these

26. Which of the following is the correct syntax for using the JavaScript exec() object method?

Answers:

• RegExpObject.exec()

• RegExpObject.exec(string)

• RegExpObject.exec(parameter1,parameter2)

• None of these

27. Having an array object var arr = new Array(), what is the best way to add a new item to the end of an array?

Answers:

• arr.push("New Item")

• arr[arr.length] = "New Item"

• arr.unshift("New Item")

• arr.append("New Item")

28. Consider the following JavaScript validation function:
function ValidateField()
{
        if(document.forms[0].txtId.value =="")
                {return false;}

        return true;
}
Which of the following options will call the function as soon as the user leaves the field?

Answers:

• input name=txtId type="text" onreset="return ValidateField()"

• input name=txtId type="text" onfocus="return ValidateField()"

• input name=txtId type="text" onsubmit="return ValidateField()"

• input name=txtId type="text" onblur="return ValidateField()"

29. Which of following uses the "with" statement in JavaScript correctly?

Answers:

• with (document.getElementById("blah").style) { background = "black"; color = "blue"; border = "1px solid green"; }

• with document.getElementById("blah").style background = "black"; color = "blue"; border = "1px solid green"; End With

• With document.getElementByName("blah").style background = "black"; color = "blue"; border = "1px solid green"; End With

• with (document.getElementById("blah").style) { .background = "black"; .color = "blue"; .border = "1px solid green"; }

30. Consider the following JavaScript validation function:

<script type="text/JavaScript">
function ValidateField()
{
        if(document.forms[0].txtId.value =="")
                {return false;}

        return true;
}
</script>

Which of the following options will call the function as soon as the user leaves the field?

Answers:

• input name=txtId type="text" onreset="return ValidateField()"

• input name=txtId type="text" onfocus="return ValidateField()"

• input name=txtId type="text" onsubmit="return ValidateField()"

• input name=txtId type="text" onblur="return ValidateField()"

31. Which of the following modifiers must be set if the JavaScript lastIndex object property was used during pattern matching?

Answers:

• i

• m

• g

• s

32. Consider the following image definition:

<img id="logo" src="companylogo1.gif" height="12" width="12" >

Which of the following will change the image to "companylogo2.gif" when the page loads?

Answers:

• logo.source="companylogo2.gif"

• logo.source="companylogo1.gif"

• document.getElementById('logo').src="companylogo1.gif"

• document.getElementById('logo').src="companylogo2.gif"

33. Which of the following will check whether the variable vRast exists or not?

Answers:

• if (typeof vRast="undefined") {}

• if (typeof vRast =="undefined") {}

• if (vRast.defined =true) {}

• if (vRast.defined ==true) {}

34. What would be the use of the following code?

function validate(field) {
    var valid=''ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'';
    var ok=''yes'';
    var temp;

    for(var i=0;i<field.value.length;i++) {
        temp='''' + field.value.substring(i,i+1)

        if(valid.indexOf(temp)==''-1'') {
                ok=''no'';
        }
    }

    if(ok==''no'') {
        alert(''error'');
        field.focus();
    }
}

Answers:

• It will force a user to enter only numeric values.

• It will force a user to enter only alphanumeric values.

• It will force a user to enter only English alphabet character values.

• None of these.

35. An image tag is defined as follows:

<img id="ERImage" width="100" height="100" onmouseover="ImageChange()"  src="Image1.jpg">

The purpose of the ImageChange() function is to change the image source to "Image2.jpg". Which of the following should the ImageChange() function look like?

Answers:

• document.getElementById('ERImage').src="Image1.jpg"

• document.getElementById('ERImage').src="Image2.jpg"

• document.getElementById('ERImage').style.src="Image1.jpg"

• document.getElementById('ERImage').style.src="Image2.jpg"

36. Which of the following choices will detect if "variableName" declares a function?

<script>
 var variableName= function(){};
</script>

Answers:

• return variableName;

• nameof variableName;

• isFunction variableName;

• typeof variableName;

37. Which of the following choices will change the source of the image to "image2.gif" when a user clicks on the image?

Answers:

• img id="imageID" src="image1.gif" width="50" height="60" onmousedown="changeimg(image1.gif)" onmouseup="changeimg(image2.gif)"

• img id="imageID" src="image1.gif" width="50" height="60" onmouseclick="changeimg(image2.gif)" onmouseup="changeimg(image1.gif)"

• img id="imageID" src="image2.gif" width="50" height="60" onmousedown="changeimg(image1.gif)" onmouseup="changeimg(image2.gif)"

• img id="imageID" src="image2.gif" width="50" height="60" onmousedown="changeimg(image2.gif)" onmouseup="changeimg(image1.gif)"

• img id="imageID" src="image1.gif" width="50" height="60" onmousedown="changeimg('image2.gif')" onmouseup="changeimg('image1.gif')"

38. How can created cookies be deleted using JavaScript?

Answers:

• They can't be deleted. They are valid until they expire.

• Overwrite with an expiry date in the past

• Use escape() on the value of the path attribute

• Use unescape() on the value of the path attribute

• The cookie file will have to be removed from the client machine.

• Wait till the expiry date is reached

39. What would be the value of 'ind' after execution of the following code?

var msg="Welcome to ExpertRating"
var ind= msg.substr(3, 3)

Answers:

• lco

• com

• ome

• Welcome

40. Are the two statements below interchangeable?

object.property
object[''property'']

Answers:

• Yes

• No

41. Which of the following is not a valid method in generator-iterator objects in JavaScript?

Answers:

• send()

• throw()

• next()

• stop()

42. Which of the following code snippets will return all HTTP headers?

Answers:

• var req = new XMLHttpRequest(); req.open('GET', document.location, false); req.send(null); var headers = req.getAllResponseHeaders().toLowerCase(); alert(headers);

• var req = new XMLHttpAccess(); req.open('GET', document.location, false); req.send(null); var headers = req.getAllResponseHeaders().toLowerCase(); alert(headers);

• var req = new XMLHttpRequest(); req.open('GET', document.location, false); req.send(null); var headers = req.getResponseHeader().toLowerCase(); alert(headers);

• var req = new XMLHttpRequestHeader(); req.open('GET', document.location, false); req.send(null); var headers = req.retrieveAllResponseHeaders().toLowerCase(); alert(headers);

43. Consider the following JavaScript alert:

<script type="text/JavaScript">
function message() {
    alert("Welcome to ExpertRating!!!")
}
</script>

Which of the following will run the function when a user opens the page?

Answers:

• body onload="message()"

• body onunload="message()"

• body onsubmit="message()"

• body onreset="message()"

44. Which of the following is the most secure and efficient way of declaring an array?

Answers:

• var a = []

• var a = new Array()

• var a = new Array(n)

• var a

45. Which of the following Regular Expression pattern flags is not valid?

Answers:

• gi

• p

• i

• g

46. Which of the following built-in functions is used to access form elements using their IDs?

Answers:

• getItem(id)

• getFormElement(id)

• getElementById(id)

• All of these

47. Which of the following statements is correct?

Answers:

• There is no undefined property in JavaScript.

• Undefined object properties can be checked using the following code: if (typeof something == null) alert("something is undefined");

• It is not possible to check for undefined object properties in JavaScript.

• Undefined object properties can be checked using the following code: if (typeof something === "undefined") alert("something is undefined");

48. Which of the following correctly uses a timer with a function named rearrange()?

Answers:

• tmr=setTimeout("rearrange ()",1)

• tmr=Timer(1,"rearrange ()")

• tmr=Timer("rearrange ()",1)

• tmr=setTimeout(1,"rearrange ()")

49. Which of the following can be used to escape the ' character?

Answers:

• *

• \

• -

• @

• #

• %

• |

• ~

50. Which event can be used to validate the value in a field as soon as the user moves out of the field by pressing the tab key?

Answers:

• onblur

• onfocus

• lostfocus

• gotfocus

• None of these

51. When setting cookies with JavaScript, what will happen to the cookies.txt data if the file exceeds the maximum size?

Answers:

• The script automatically generates a run-time error.

• The script automatically generates a load-time error.

• All processes using document.cookie are ignored.

• The file is truncated to the maximum length.

52. Which of the following are not global methods and properties in E4X?

Answers:

• ignoreComments

• ignoreWhiteSpace

• setName()

• setNamespace()

• ignoreComments and ignoreWhiteSpace

• setName() and setNamespace()

53. Which of the following will change the color of a paragraph's text to blue when a user hovers over it, and reset it back to black when the user hovers out?

Answers:

• <p onmouseover="style.color='black'" onmouseout="style.color='blue'"> The text of the paragraph..</p>

• <p onmouseover="style.color='blue'" onmouseout="style.color='black'"> The text of the paragraph..</p>

• <p onmouseout="style.color='blue'"> The text of the paragraph..</p>

• <p onmouseover="style.color='blue'"> The text of the paragraph..</p>

• <p onmousein="style.color='blue'" onmouseout="style.color='black'"> The text of the paragraph..</p>

54. What is the purpose of while(1) in the following JSON response?

while(1);[['u',[['smsSentFlag','false'],['hideInvitations','false'],['remindOnRespondedEventsOnly','true'],['hideInvitations_remindOnRespondedEventsOnly','false_true'],['Calendar ID stripped for privacy','false'],['smsVerifiedFlag','true']]]]

Answers:

• It's invalid JSON code.

• It makes it difficult for a third-party to insert the JSON response into an HTML document with a <script> tag.

• It iterates the JSON response.

• It prevents the JSON response from getting executed.

55. Consider the three variables: 

someText = 'JavaScript1.2';
pattern = /(\w+)(\d)\.(\d)/i;
outCome = pattern.exec(someText);

What does outCome[0] contain?

Answers:

• true

• false

• JavaScript1.2

• null

• 0

56. Which of the following choices will turn a string into a JavaScript function call (case with objects) of the following code snippet?

<script>
window.foo = {
    bar: {
        baz: function() {
            alert('Hello!');
        }
    }
};
</script>

Answers:

• bar['baz']();

• object['foo']['bar']['baz']();

• document['foo']['bar']['baz']();

• window['foo']['bar']['baz']();

57. Which of the following determines whether cookies are enabled in a browser or not?

Answers:

• (navigator.Cookie)? true : false

• (application.cookieEnabled)? true : false

• (navigator.cookieEnabled)? true : false

• (application.cookie)? true : false

58. Which of the following options can be used for adding direct support for XML to JavaScript?

Answers:

• E4X

• egex

• Generators and Iterators

• let

59. Which of the following will detect which DOM element has the focus?

Answers:

• document.activeElement

• document.ready

• document.referrer

• document.getelementbyid

60. Which of the following will randomly choose an element from an array named myStuff, given that the number of elements changes dynamically?

Answers:

• randomElement = myStuff[Math.floor(Math.random() * myStuff.length)];

• randomElement = myStuff[Math.ceil(Math.random() * myStuff.length)];

• randomElement = myStuff[Math.random(myStuff.length)];

• randomElement = Math.random(myStuff.length);

61. How can global variables be declared in JavaScript?

Answers:

• All variables are local in JavaScript.

• Declare the variable between the 'script' tags, and outside a function to make the variable global

• Precede the variable name with the constant global

• Declare the variable in an external file

62. Which of the following objects in JavaScript contains the collection called "plugins"?

Answers:

• Location

• Window

• Screen

• Navigator

63. What will be output of the following code?

function testGenerator() {
    yield "first";
    document.write("step1");

    yield "second";
    document.write("step2");

    yield "third";
    document.write("step3");
}

var g = testGenerator();
document.write(g.next());
document.write(g.next());

Answers:

• firststep1second

• step1step2

• step1

• step1step2step3

64. Which of the following methods will copy data to the Clipboard?

Answers:

• execClipboard('Copy')

• copyCommand('Clipboard')

• execCommand('Copy')

• execClipboard('Copy')

65. Which of the following code snippets trims whitespace from the beginning and end of the given string str?

Answers:

• str.replace(/^\s+|\s+$/g, '');

• str.replace(/^\s+/,'');

• str.replace(/\s+$/,'');

• str.replace(/\s+/g,' ');

66. What is the difference between call() and apply()?

Answers:

• The call() function accepts an argument list of a function, while the apply() function accepts a single array of arguments.

• The apply() function accepts an argument list of a function, while the call() function accepts a single array of arguments.

• The call() function accepts an object list of a function, while the apply() function accepts a single array of an object.

• The call() function accepts an object list of a function, while the apply() function accepts a single array of an object.

67. Which of the following code snippets is more efficient, and why?

<script language="JavaScript">
        for(i=0;i<document.images.length;i++)
                document.images[i].src="blank.gif";
</script>

<script language="JavaScript">
        var theimages = document.images;
        for(i=0;i<theimages.length;i++)
                theimages[i].src="blank.gif"
</script>

Answers:

• Both are equally efficient.

• The first code is more efficient as it contains less code.

• The first code is more efficient as it employs object caching.

• The second code is more efficient as it employs object caching.

68. What is the meaning of obfuscation in JavaScript?

Answers:

• Obfuscation is a keyword in JavaScript.

• Making code unreadable using advanced algorithms.

• Decrypting encrypted source code using advanced algorithms.

• None of these.

69. Which of the following JavaScript Regular Expression modifiers finds one or more occurrences of a specific character in a string?

Answers:

• ?

• *

• +

• #

70. Which of the following is not a valid JavaScript operator?

Answers:

• |

• ===

• %=

• ^

71. Which of the following code snippets returns "[object object]"?

Answers:

• <script> var o = new Object(); o.toSource(); </script>

• <script> var o = new Object(); o.valueOf(); </script>

• <script> var o = new Object(); o.toString(); </script>

• <script> var o = new Object(); o.getName(); </script>

72. Which of the following can be used to invoke an iframe from a parent page?

Answers:

• window.frames

• document.getElementById

• document.getelementsbyname

• document.getelementsbyclassname

73. Select the following function that shuffles an array?

Answers:

• function shuffle(array) { var tmp, current, top = array.length; if(top) while(--top) { current = Math.floor(Math.random() * (top + 1)); tmp = array[current]; array[current] = array[top]; array[top] = tmp; } return array; }

• function shuffle(array) { return array.sort(function(a,b) { return (a-b); }); }

• function shuffle(array) { var results = new Array(); var sorted_arr = array.sort(); for (var i = 0; i < array.length - 1; i++) { if (sorted_arr[i + 1] == sorted_arr[i]) { results.push(sorted_arr[i]); } } return results; }

• function shuffle(array) { for (var tmp, cur, top=array.length; top--;){ cur = (Math.random() * (top + 1)) << 0; tmp = array[cur]; array[cur] = array[top]; array[top] = tmp; } return array.sort(); }

74. Which of the following code snippets removes objects from an associative array?

Answers:

• delete array["propertyName"];

• array.propertyName.remove();

• array.splice(index, 1);

• array["propertyName"].remove();

75. What is the error in the statement: var charConvert = toCharCode('x');?

Answers:

• toCharCode() is a non-existent method.

• Nothing. The code will work fine.

• toCharCode only accepts numbers.

• toCharCode takes no arguments.

76. What value would JavaScript assign to an uninitialized variable?

Answers:

• NaN

• null

• undefined

• false

77. What does the following JavaScript code do?

contains(a, obj) {
    for (var i = 0; i < a.length; i++) {
        if (a[i] === obj) {
            return true;
        }
    }
    return false;
}

Answers:

• It calculates an array's length.

• It compares 'a' and 'obj' in an array.

• The code will cause an error.

• It checks if an array contains 'obj'.

78. If an image is placed styled with z-index=-1 and a text paragraph is overlapped with it, which one will be displayed on top?

Answers:

• The paragraph.

• The image.

• It depends on other rules.

79. Which of the following code snippets gets an image's dimensions (height & width) correctly?

Answers:

• var img = document.getElementById('imageid'); var width = img.clientWidth; var height = img.clientHeight;

• var img = document.getElementById('imageid'); var width = img.width; var height = img.height;

• var img = document.getElementById('imageid'); var width = img.getAttribute('width'); var height = img.getAttribute('height');

• var img=document.getElementById("imageid"); var width=img.offsetWidth; var height=img.offsetHeight;

80. Which of the following are correct values of variableC, and why?

<script>
variableA = [6,8];
variableB =[7,9];
variableC = variableA + variableB;
</script>

Answers:

• 6, 7, 8 and 9. The + operator is defined for arrays, and it concatenates strings, so it converts the arrays to strings.

• 6, 15 and 9. The + operator is defined for arrays, and it concatenates numbers, so it converts the arrays to numbers.

• 6, 8, 7 and 9. The + operator is defined for arrays, and it concatenates strings, so it converts the arrays to strings.

• 6, 87 and 9. The + operator is not defined for arrays, and it concatenates strings, so it converts the arrays to strings.

81. The following are the samples for getting a selected value in the from a dropdown list:

<select id="ddlViewBy">
<option value="1">test1</option>
<option value="2" selected="selected">test2</option>
<option value="3">test3</option>
</select>

Which code block is correct?

Answers:

• var e = document.getElementById("ddlViewBy"); var strUser = e.options[e.selectedIndex].text;

• var e = document.getElementById("ddlViewBy"); var strUser = e.options[e.selectedIndex].value;

• var e = document.getElementByName("ddlViewBy"); var strUser = e.options[e.selectedIndex].text;

• var e = document.getElementByName("ddlViewBy"); var strUser = e.options[e.selectedIndex].value;

82. var profits=2489.8237

Which of the following code(s) produces the following output?

output : 2489.824

Answers:

• profits.toFixed(4)

• profits.toFixed(3)

• profits.formatDollar(3)

• profits.nuberFormat(3)

83. A form contains two fields named id1 and id2.  How can you copy the value of the id2 field to id1?

Answers:

• document.forms[0].id1.value=document.forms[0].id2.value

• document.forms[0].id2.value=document.forms[0].id1.value

• document.id1.value=document.id2.value

• document.id2.value=document.id1.value

84. Which of the following code snippets will toggle a div element's background color?

<button id="toggle">Toggle</button>
<div id="terd">Change Background Color.</div>

Answers:

• <script> var button = document.getElementById('toggle'); button.click = function() { terd.style.backgroundColor = terd.style.backgroundColor == 'blue' ? 'red' : 'blue'; }; </script>

• <script> var button = document.getElementById('toggle'); button.ready = function() { terd.style.backgroundColor = terd.style.backgroundColor == 'blue' ? 'red' : 'blue'; }; </script>

• <script> var button = document.getElementById('toggle'); button.focus = function() { terd.style.backgroundColor = terd.style.backgroundColor == 'blue' ? 'red' : 'blue'; }; </script>

• <script> var button = document.getElementById('toggle'); button.onclick = function() { terd.style.backgroundColor = terd.style.backgroundColor == 'blue' ? 'red' : 'blue'; }; </script>

85. How can the user's previously navigated page be determined using JavaScript?

Answers:

• It is not possible in JavaScript. This can be done only through server-side scripting.

• Using the document.referrer property

• Using the window object

• None of these

86. Which of the following is not a valid method for looping an array?

Answers:

• var a= [1,2]; for (var i = 0; i < a.length; i++) { alert(a[i]); }

• var a= [1,2]; a.forEach( function(item) { alert(item); })

• var a= [1,2]; a.map( function(item) { alert(item); })

• var a= [1,2]; a.loop( function(item) { alert(item); })

87. Which of the following correctly sets a class for an element?

Answers:

• document.getElementById(elementId).className = "Someclass";

• document.getElementById(elementId).setAttribute("className", "Someclass");

• document.getElementById(elementId).class = "Someclass";

• document.getElementById(elementId).style = "Someclass";

88. An HTML form contains 10 checkboxes all named "chkItems". Which JavaScript function can be used for checking all the checkboxes together?

Answers:

• function CheckAll() { for (z = 0; z < document.forms.chkItems.length; z++) { document.forms.chkItems[z].checked=true } }

• function CheckAll() { for (z = 0; z < document.forms[0].chkItems.length; z++) { document.forms[0].chkItems[z].checked=true } }

• function CheckAll() { for (z = 0; z < document.forms[0].chkItems.length; z++) { document.forms[0].chkItems.list[z].checked=true } }

• function CheckAll() { for (z = 0; z < document.forms[0].chkItems.length; z++) { document.forms[0].chkItems.list[z].checked=false } }


15 NOT Answered Yet Test Questions:

(hold on, will be updated soon)
89. What is the output of the following code?

var a = 'A'.charCodeAt(0) + 5;
var b = 'c'.charCodeAt(0) + 1;
var c = 0;
for (var i = 0; i < 10; i++) {
	c = c + (a+b % 2);
}
alert(c);

Answers:

• 700

• 60

• 0

• 760

90. 

Which of the following choices will change the source of the image to "image2.gif" when a user clicks on the image?

Answers:

• img id="imageID" src="image1.gif" width="50" height="60" onmousedown="changeimg(image1.gif)" onmouseup="changeimg(image2.gif)"

• img id="imageID" src="image1.gif" width="50" height="60" onmouseclick="changeimg(image2.gif)" onmouseup="changeimg(image1.gif)"

• img id="imageID" src="image2.gif" width="50" height="60" onmousedown="changeimg(image1.gif)" onmouseup="changeimg(image2.gif)"

• img id="imageID" src="image2.gif" width="50" height="60" onmousedown="changeimg(image2.gif)" onmouseup="changeimg(image1.gif)"

• img id="imageID" src="image1.gif" width="50" height="60" onmousedown="changeimg('image2.gif')" onmouseup="changeimg('image1.gif')"

91. Which of the following is/are true regarding JavaScript and multi-threading/concurrency?

Answers:

• JavaScript is single-threaded, forcing asynchronous events to a queue to wait for execution.

• JavaScript is multi-threaded, and behaves in a synchronous manner.

• JavaScript can be single or multi-threaded, depending on the browser's capabilities.

• None of these.

92. Which of the following is not a valid Date Object method in JavaScript?

Answers:

• parse()

• setDay()

• setTime()

• valueOf()

93. 

Consider the following JavaScript function to change the color of the text box named txtName:
function color(col) { document.forms[0].txtName.style.background=col }
Which of the following will change the color of the text box to green, as long as the user is pressing a key?

Answers:

• input type="text" onkeydown="color('white')" onkeyup="color('green')" name="txtName"

• input type="text" onkeydown="color('green')" onkeyup="color('white')" name="txtName"

• input type="text" onkeydown="color('green')" name="txtName"

• input type="text" onkeydown="color('white')" name="txtName"

• input type="text" onkeypress="color('green')" onkeyup="color('white')" name="txtName"

94. 

Which of the following statements are true regarding the code below?

<script>
alert("foo" === new String("foo")); // output false
</script>

Answers:

• The "===" operator always returns false.

• The "===" operator returns true only if they refer to the same object (comparing by reference) and if both the primitive and the object have the same value.

• The "===" operator returns true only if the object (comparing by reference) and the primitive have the same value.

• The "===" operator does not work for objects.

95. Consider the following code snippet:

var myJSONObject =
        {"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"};

What is the best way to remove the property 'regex', so the result would be this code snippet?

myJSONObject ==
        {"ircEvent": "PRIVMSG", "method": "newURI"};

Answers:

• myJSONObject.regex.delete;

• myJSONObject.regex.remove;

• delete myJSONObject.regex;

• remove myJSONObject.regex;

96. Which of the following is the best way to show both single and double quotes in the same sentence?

Answers:

• alert("It's "+'"game"'+" time.");

• alert('It\'s \"game\" time.');

• alert('It\'\s "game" time.');

• alert('It\'s "game" time.');

97. Which of the following statements is true regarding importing JavaScript files inside of other JavaScript files?

Answers:

• There is no import/include/require keyword in JavaScript, but there ways to import JS files inside of other JS files.

• There is an import keyword in JavaScript, which allows importing JS files inside of other JS files.

• There is no option to do so in JavaScript.

98. Which of the following shortcuts can be used for writing multiple document.write statements?

Answers:

• for(document){}

• with(document) {}

• withThis(document){}

• None of these

99. In JavaScript, the encodeURI() function is used to encode special characters. Which of the following special characters is/are an exception to that rule?

A. ??
B. ???
C. @
D. $

Answers:

• A

• B

• C

• D

• A and B

• C and D

100. Consider the following code:
<form>
	<textarea id="foo" name="foo"></textarea>
</form>

Which of the following is the best method to get the line number of the form's text area?

Answers:

• <script> foo.value.split(/\r\n\|\r\|\n/g); </script>

• <script> foo.value.split(/\r\/n\|\r\|\n/g); </script>

• <script> foo.value.split(/\rn\|\r\|\n/g); </script>

• <script> foo.value.split(/\r\n|\r|\n/g); </script>

101. Which of the following code snippets shows an alert for an empty string?

var a = "";

Answers:

• If(a){ alert(???This is empty string???);}

• If(a == NUL){ alert(???This is empty string???);}

• If(!a){ alert(???This is empty string???);}

• If(a.empty){ alert(???This is empty string???);}

102. Consider the following code:

var setter=new Object()
setter.color="blue"

How would you delete the color property of the variable seter?

Answers:

• setter.color delete;

• delete setter.color

• delete(setter.color)

• setter.color.delete

103. Is the following statement regarding expression closures in JavaScript true or false?

The syntax function(x) {return x*x;} can be written as function(x) x*x.

Answers:

• True

• False