TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

<< Back to JAVASCRIPT

JavaScript typeof String, Number

Invoke the typeof operator to determine the type of an object. See if a value is a string.
Typeof. With this operator we get a string that indicates the type of a variable. A variable (like an object or array element) can be passed to typeof.
For performance, typeof is a light-weight operation. In the benchmark it appears to execute as fast as a null check in the V8 engine.
A first example. Here we have an array with three elements—a string, a number, and a function. In JavaScript functions too are objects.function

Loop 1: We print the result of typeof to the page with console.log. We see the lowercase type strings.

Loop 2: We use an if, else chain to test the result of typeof. In this way we can test the types of array elements.

JavaScript program that uses typeof // Create test array. var values = ["cat", 100, function(){}]; // Write the result of typeof. for (var i = 0; i < values.length; i++) { console.log("TYPEOF RESULT: " + typeof values[i]); } // Test the elements with typeof. for (var i = 0; i < values.length; i++) { if (typeof values[i] === "string") { console.log("FOUND string"); } else if (typeof values[i] === "number") { console.log("FOUND number"); } else if (typeof values[i] === "function") { console.log("FOUND function"); } } Output TYPEOF RESULT: string TYPEOF RESULT: number TYPEOF RESULT: function FOUND string FOUND number FOUND function
Arrays. For arrays, we cannot use a "typeof array" expression. We must use the Array.isArray method. We can use isArray on literal arrays and arrays created with the Array constructor.Array
JavaScript program that tests for array type var test = [1, 2, 3]; // See if the value is an array. if (Array.isArray(test)) { console.log("ISARRAY"); } if (typeof test === "array") { // This does not work. console.log("ERROR"); } var emptyArray = Array(100); // We can also test an array made with the Array constructor. if (Array.isArray(emptyArray)) { console.log("ISARRAY"); } Output ISARRAY ISARRAY
Benchmark, typeof. Here we try to estimate the performance of typeof. The values array contains 3 strings. The typeof keyword is use on each element in the array.

Version 1: The typeof operator is used on each string. The result variable is incremented on each element in the array.

Version 2: This version of the code just tests to see if the string is not undefined in the array.

Result: Based on the benchmark (done in 2019), typeof is a good choice for JavaScript programs—it executes fast.

JavaScript program that benchmarks typeof var result = 0; var values = ["cat", "bird", "frog"]; var x1 = performance.now(); // Version 1: use typeof. for (var i = 0; i < 1000000; i++) { for (var x = 0; x < values.length; x++) { if (typeof values[x] === "string") { result++; } } } var x2 = performance.now(); // Version 2: test against undefined. for (var i = 0; i < 1000000; i++) { for (var x = 0; x < values.length; x++) { if (values[x]) { result++; } } } var x3 = performance.now(); // Results. console.log("TIME 1: " + (x2 - x1)); console.log("TIME 2: " + (x3 - x2)); Output TIME 1 (2019): 10.039 TIME 2: 11.939
A summary. With the typeof operator we get a string that tells us an object's type. The typeof operator appears to perform fast in Chrome—about as fast as a null check.
© TheDeveloperBlog.com
The Dev Codes

Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf