Tuesday, September 7, 2021

Async Await Simple example


let url1 = "https://reqres.in/api/users";
async function users() {
    let response = await fetch(url1);
    let user = await response.json();
    return user;

};

let singleUrl = "https://reqres.in/api/users/";
async function userData(data) {
    let url = singleUrl + data;
    let response = await fetch(url);
    let user = await response.json();
    return user;
};


users().then(respData => {
    console.log(respData.data);
    var userid = respData.data[0]['id']
    userData(userid).then((responseData=> {
        console.log(responseData);
    });
});

Thursday, August 28, 2014

Example for Closure, .call, .apply in javascript


function add(y,z){ 
function fn(x,y,z){ 
console.log(Math.round(x+y)*z);
};
fn(this.x,y,z);
};

add.call({x: 20.1},3.1,5.1);  // 117.3
add.apply({x: 20.1},[3.1,5.1]);  // 117.3

Wednesday, July 30, 2014

Strangest things i found in JavaScript


  1. [] + []; // ""
  2. {} + {}; // NaN
  3. [] + {}; // "[object Object]"
  4. {} + []; // 0
  5. [] == []; // false
  6. [] < []; // false
  7. [] > []; // false
  8. [] <= []; // true
  9. [] >= []; //true
  10. Math.min() < Math.max(); // false
  11. foo = [0];
  12. !foo; // false
  13. foo == foo; // true
  14. foo == !foo; // true
  15. [['0']] == false; // true
  16. [['0']] == true; // false
  17. typeof NaN; // "number"
  18. NaN == true; // false
  19. NaN == false; // false
  20. NaN != true; // true
  21. NaN != false; // true
  22. NaN == NaN; // false
  23. NaN == !NaN; // false
  24. !NaN; // true
  25. NaN != NaN; // true
  26. 'x' == true; // true
  27. 'x' == false; // false
  28. '0' == true; // false
  29. '0' == false; // true

Friday, July 25, 2014

Couple of interview questions

Write a function that takes an integer (i) and prints out the first 'i' rows of Pascal's Triangle (eg. i =5).

            line = 5;
            var pascalDepth = parseInt(line, 10); //The input integer is provided on a single line as a text value, so this handles it.
            var testTriangle = pascalTriangle(pascalDepth);
            var output = [];
            maxlength = testTriangle.length;
            var html = "<table>"
            for(var i = 0; i < maxlength; i++){
                html += "<tr>";
                html += "<td>";
                html += testTriangle[i];
                html += "</td>";
                html += "</tr>";
            }
            html+= "</table>";

            document.write(html);

            function pascalTriangle(totalLines, triangle) {
                if (typeof triangle === 'undefined') {
                    triangle = [];
                }

                if (triangle.length === totalLines) {
                    return triangle;
                }

                if (triangle.length > 0) {
                    var triangleLine = [];
                    for (var i = 0; i < triangle.length; i++) {
                        if (typeof triangle[triangle.length - 1][i - 1] === 'undefined') {
                            triangleLine.push(1);
                        } else {
                            triangleLine.push((triangle[triangle.length - 1][i - 1] + triangle[triangle.length - 1][i]));
                        }
                    }
                    triangleLine.push(1);
                    triangle.push(triangleLine);
                } else {
                    triangle.push([1]);
                }
                return pascalTriangle(totalLines, triangle);
            }
-----------------------------------------------------------------------------------------

Write a function that prints out a breakdown of an integer into a sum of numbers that have just one non-zero digit.  

eg., given 43018 it should print 40000 + 3000 + 10 + 8.

            var arr = [];
            var i =1;               
            var a = 40118;
            var input = 40118;
            while(a > 0)
            {
            if(a%(Math.pow(10,i)) > 0)
              arr.push(a%(Math.pow(10,i)));       
             
              a = a-a%(Math.pow(10,i++));
            }
            arr.sort(function(a,b){ return b-a;});
            document.write(input +" = " +arr.join(" + "));

Thursday, July 17, 2014

Creating a URL shortner

Here is the actual code i have created using php its very simple and easy to use.

Here is the live Working url : http://shorturl-kartheekgj.rhcloud.com/


Please find the code at:   https://github.com/kartheekgj/shorturl



Wednesday, May 7, 2014

Swap 2 numbers without using third variable

This is a very very very simple question generally asked as first level of logical questions

Swap 2 numbers without using third variable


function fnSwap(a,b){
   console.log("Initial value of a: "+ a);
   console.log("Initial value of b: "+ b);

   // swaping the values of a and b
    b = a+b
    a = b-a
    b = b-a
    console.log("Swaped value of a: "+ a);
   console.log("Swaped value of b: "+ b);
}

Input:

fnSwap(10,20);


output:

Initial value of a: 10
Initial value of b: 20
Swaped value of a: 20
Swaped value of b: 10

Note:
It works with console if you are working with firefox install firebug to see output in console
if you install chrome/IE you can use f12 for console

Friday, February 14, 2014

Change your Facebook Username

This is a little hacky type of method but it works

Step 1 
  • Go to account settings from your
  • Click on ‘Security’
  • Then click the option ‘Deactivate your account.’
  • Give explanation as “Its temporary”.

Step 2
  • Then log in again with your email and password.
  • Done
  • Your account is re-activated.
Step 3
  • Go to account settings from the button on top right.
  • Edit username.
  • Done. Your account username is changed.