Soal coding javascript untuk latihan

Klik⭐jika Anda menyukai proyek ini dan ikuti @SudheerJonna untuk pembaruan lainnya. Pertanyaan pengkodean tersedia. Versi PDF dan Epub tersedia di tab tindakan

Show

Jelajahi sumber daya gratis terbaik untuk mempelajari JavaScript. Bangun proyek Anda sendiri & dapatkan sertifikasi gratis hanya dalam 25 hari


  1. Ikuti kursus Proyek JavaScript ini untuk beralih dari pemula JS hingga membangun proyek Anda sendiri dengan percaya diri
  2. Ikuti bootcamp wawancara coding ini jika Anda serius ingin dipekerjakan dan tidak memiliki gelar CS
  3. Ikuti Kursus JavaScript Tingkat Lanjut ini untuk mempelajari konsep JS tingkat lanjut dan menjadi pengembang JS teratas

Pertanyaan Wawancara JavaScript. Pertanyaan dan Jawaban Wawancara JavaScript Teratas


Daftar isi

TIDAK. Questions123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449
  1. Apa cara yang mungkin untuk membuat objek dalam JavaScript

    There are many ways to create objects in javascript as below

    1. Object constructor

      The simplest way to create an empty object is using the Object constructor. Currently this approach is not recommended

      var object = new Object();

    2. Object's create method

      The create method of Object creates a new object by passing the prototype object as a parameter

      var object = Object.create(null);

    3. Object literal syntax

      The object literal syntax (or object initializer), is a comma-separated set of name-value pairs wrapped in curly braces

      var object = {
           name: "Sudheer",
           age: 34
      };
      
      Object literal property values can be of any data type, including array, function, and nested object.

      Note. This is an easiest way to create an object

    4. Function constructor

      Create any function and apply the new operator to create object instances,

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");

    5. Function constructor with prototype

      This is similar to function constructor but it uses prototype for their properties and methods,

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();

      This is equivalent to an instance created with an object create method with a function prototype and then call that function with an instance and parameters as arguments

      function func() {};
      
      new func(x, y, z);

      (OR)

      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);

    6. ES6 Class syntax

      ES6 introduces class feature to create the objects

      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");

    7. Singleton pattern

      A Singleton is an object which can only be instantiated one time. Repeated calls to its constructor return the same instance and this way one can ensure that they don't accidentally create multiple instances

      var object = new (function () {
        this.name = "Sudheer";
      })();

  2. What is a prototype chain

    Prototype chaining is used to build new types of objects based on existing ones. It is similar to inheritance in a class based language

    The prototype on object instance is available through Object. getPrototypeOf(object) or __proto__ property whereas prototype on constructors function is available through Object. prototype

    Soal coding javascript untuk latihan

  3. What is the difference between Call, Apply and Bind

    Perbedaan antara Call, Apply dan Bind dapat dijelaskan dengan contoh di bawah ini,

    Call. The call() method invokes a function with a given

    function func() {};
    
    new func(x, y, z);
    48 value and arguments provided one by one

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?

    Apply. Invokes the function with a given

    function func() {};
    
    new func(x, y, z);
    48 value and allows you to pass in arguments as an array

    var object = Object.create(null);
    0

    mengikat. mengembalikan fungsi baru, memungkinkan Anda untuk memberikan sejumlah argumen

    var object = Object.create(null);
    _1

    Panggilan dan lamaran cukup dipertukarkan. Keduanya segera menjalankan fungsi saat ini. Anda perlu memutuskan apakah lebih mudah mengirim dalam array atau daftar argumen yang dipisahkan koma. Anda dapat mengingat dengan memperlakukan Call untuk koma (daftar terpisah) dan Apply untuk Array

    Sedangkan Bind membuat fungsi baru yang

    function func() {};
    
    new func(x, y, z);
    48 disetel ke parameter pertama yang diteruskan ke bind()

  4. Apa itu JSON dan operasi umumnya

    JSON adalah format data berbasis teks yang mengikuti sintaks objek JavaScript, yang dipopulerkan oleh

    function func() {};
    
    new func(x, y, z);
    51. Ini berguna ketika Anda ingin mengirimkan data melalui jaringan dan pada dasarnya hanya berupa file teks dengan ekstensi. json, and a MIME type of application/json

    Parsing. Converting a string to a native object

    var object = Object.create(null);
    2

    Stringification. converting a native object to a string so it can be transmitted across the network

    var object = Object.create(null);
    3

  5. What is the purpose of the array slice method

    The slice() method returns the selected elements in an array as a new array object. It selects the elements starting at the given start argument, and ends at the given optional end argument without including the last element. If you omit the second argument then it selects till the end

    Some of the examples of this method are,

    var object = Object.create(null);
    4

    Note. Slice method won't mutate the original array but it returns the subset as a new array

  6. What is the purpose of the array splice method

    The splice() method is used either adds/removes items to/from an array, and then returns the removed item. The first argument specifies the array position for insertion or deletion whereas the optional second argument indicates the number of elements to be deleted. Each additional argument is added to the array

    Some of the examples of this method are,

    var object = Object.create(null);
    5

    Note. Splice method modifies the original array and returns the deleted array

  7. What is the difference between slice and splice

    Some of the major difference in a tabular form

    SliceSpliceDoesn't modify the original array(immutable)Modifies the original array(mutable)Returns the subset of original arrayReturns the deleted elements as arrayUsed to pick the elements from arrayUsed to insert or delete elements to/from array

  8. How do you compare Object and Map

    Objects are similar to Maps in that both let you set keys to values, retrieve those values, delete keys, and detect whether something is stored at a key. Due to this reason, Objects have been used as Maps historically. But there are important differences that make using a Map preferable in certain cases

    1. The keys of an Object are Strings and Symbols, whereas they can be any value for a Map, including functions, objects, and any primitive
    2. The keys in Map are ordered while keys added to Object are not. Thus, when iterating over it, a Map object returns keys in order of insertion
    3. You can get the size of a Map easily with the size property, while the number of properties in an Object must be determined manually
    4. A Map is an iterable and can thus be directly iterated, whereas iterating over an Object requires obtaining its keys in some fashion and iterating over them
    5. An Object has a prototype, so there are default keys in the map that could collide with your keys if you're not careful. As of ES5 this can be bypassed by using map = Object. create(null), but this is seldom done
    6. A Map may perform better in scenarios involving frequent addition and removal of key pairs

  9. Apa perbedaan antara operator == dan ===

    JavaScript provides both strict(===, . ==) and type-converting(==, . =) equality comparison. The strict operators take type of variable in consideration, while non-strict operators make type correction/conversion based upon values of variables. The strict operators follow the below conditions for different types,

    1. Two strings are strictly equal when they have the same sequence of characters, same length, and same characters in corresponding positions
    2. Two numbers are strictly equal when they are numerically equal. i. e, Having the same number value. There are two special cases in this,
      1. NaN is not equal to anything, including NaN
      2. Positive and negative zeros are equal to one another
    3. Two Boolean operands are strictly equal if both are true or both are false
    4. Two objects are strictly equal if they refer to the same Object
    5. Null and Undefined types are not equal with ===, but equal with ==. i. e, null===undefined --> false but null==undefined --> true

    Some of the example which covers the above cases,

    var object = Object.create(null);
    6

  10. What are lambda or arrow functions

    An arrow function is a shorter syntax for a function expression and does not have its own this, arguments, super, or new. target. These functions are best suited for non-method functions, and they cannot be used as constructors

  11. What is a first class function

    In Javascript, functions are first class objects. First-class functions means when functions in that language are treated like any other variable

    For example, in such a language, a function can be passed as an argument to other functions, can be returned by another function and can be assigned as a value to a variable. For example, in the below example, handler functions assigned to a listener

    var object = Object.create(null);
    7

  12. What is a first order function

    First-order function is a function that doesn’t accept another function as an argument and doesn’t return a function as its return value

    var object = Object.create(null);
    8

  13. What is a higher order function

    Higher-order function is a function that accepts another function as an argument or returns a function as a return value or both

    var object = Object.create(null);
    9

  14. What is a unary function

    Unary function (i. e. monadic) is a function that accepts exactly one argument. It stands for a single argument accepted by a function

    Let us take an example of unary function,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    0

  15. What is the currying function

    Currying is the process of taking a function with multiple arguments and turning it into a sequence of functions each with only a single argument. Currying is named after a mathematician Haskell Curry. By applying currying, a n-ary function turns it into a unary function

    Let's take an example of n-ary function and how it turns into a currying function,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    1

    Curried functions are great to improve code reusability and functional composition

  16. What is a pure function

    A Pure function is a function where the return value is only determined by its arguments without any side effects. i. e, If you call a function with the same arguments 'n' number of times and 'n' number of places in the application then it will always return the same value

    Let's take an example to see the difference between pure and impure functions,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    2

    As per the above code snippets, the Push function is impure itself by altering the array and returning a push number index independent of the parameter value. . Whereas Concat on the other hand takes the array and concatenates it with the other array producing a whole new array without side effects. Also, the return value is a concatenation of the previous array

    Remember that Pure functions are important as they simplify unit testing without any side effects and no need for dependency injection. They also avoid tight coupling and make it harder to break your application by not having any side effects. These principles are coming together with Immutability concept of ES6 by giving preference to const over let usage

  17. What is the purpose of the let keyword

    The

    function func() {};
    
    new func(x, y, z);
    52 statement declares a block scope local variable. Hence the variables defined with let keyword are limited in scope to the block, statement, or expression on which it is used. Whereas variables declared with the
    function func() {};
    
    new func(x, y, z);
    53 keyword used to define a variable globally, or locally to an entire function regardless of block scope

    Let's take an example to demonstrate the usage,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _3

  18. What is the difference between let and var

    Anda dapat membuat daftar perbedaan dalam format tabel

    varletIt is been available from the beginning of JavaScriptIntroduced as part of ES6It has function scopeIt has block scopeVariables will be hoistedHoisted but not initialized

    Let's take an example to see the difference,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    4

  19. What is the reason to choose the name let as a keyword

    function func() {};
    
    new func(x, y, z);
    52 is a mathematical statement that was adopted by early programming languages like Scheme and Basic. It has been borrowed from dozens of other languages that use
    function func() {};
    
    new func(x, y, z);
    52 already as a traditional keyword as close to
    function func() {};
    
    new func(x, y, z);
    53 as possible

  20. How do you redeclare variables in switch block without an error

    Jika Anda mencoba untuk mendeklarasikan ulang variabel di

    function func() {};
    
    new func(x, y, z);
    57 maka akan menyebabkan kesalahan karena hanya ada satu blok. Misalnya, blok kode di bawah ini memunculkan kesalahan sintaksis seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    5

    To avoid this error, you can create a nested block inside a case clause and create a new block scoped lexical environment

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    6

  21. What is the Temporal Dead Zone

    The Temporal Dead Zone is a behavior in JavaScript that occurs when declaring a variable with the let and const keywords, but not with var. In ECMAScript 6, accessing a

    function func() {};
    
    new func(x, y, z);
    52 or
    function func() {};
    
    new func(x, y, z);
    59 variable before its declaration (within its scope) causes a ReferenceError. The time span when that happens, between the creation of a variable’s binding and its declaration, is called the temporal dead zone

    Let's see this behavior with an example,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    7

  22. What is IIFE(Immediately Invoked Function Expression)

    IIFE (Immediately Invoked Function Expression) is a JavaScript function that runs as soon as it is defined. The signature of it would be as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    8

    The primary reason to use an IIFE is to obtain data privacy because any variables declared within the IIFE cannot be accessed by the outside world. i. e, If you try to access variables with IIFE then it throws an error as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    9

  23. How do you decode or encode a URL in JavaScript?

    function func() {};
    
    new func(x, y, z);
    60 function is used to encode an URL. This function requires a URL string as a parameter and return that encoded string.
    function func() {};
    
    new func(x, y, z);
    61 function is used to decode an URL. This function requires an encoded URL string as parameter and return that decoded string

    Note. If you want to encode characters such as

    function func() {};
    
    new func(x, y, z);
    62 then you need to use
    function func() {};
    
    new func(x, y, z);
    63

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    0

  24. What is memoization

    Memoization is a programming technique which attempts to increase a function’s performance by caching its previously computed results. Each time a memoized function is called, its parameters are used to index the cache. If the data is present, then it can be returned, without executing the entire function. Jika tidak, fungsi dijalankan dan hasilnya ditambahkan ke cache. Let's take an example of adding function with memoization,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    1

  25. What is Hoisting

    Hoisting is a JavaScript mechanism where variables, function declarations and classes are moved to the top of their scope before code execution. Remember that JavaScript only hoists declarations, not initialisation. Let's take a simple example of variable hoisting,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    2

    The above code looks like as below to the interpreter,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    3

    In the same fashion, function declarations are hoisted too

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    4

    This hoisting makes functions to be safely used in code before they are declared

  26. What are classes in ES6

    In ES6, Javascript classes are primarily syntactic sugar over JavaScript’s existing prototype-based inheritance. For example, the prototype based inheritance written in function expression as below,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    5

    Whereas ES6 classes can be defined as an alternative

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    6

  27. What are closures

    A closure is the combination of a function and the lexical environment within which that function was declared. i. e, It is an inner function that has access to the outer or enclosing function’s variables. The closure has three scope chains

    1. Own scope where variables defined between its curly brackets
    2. Outer function’s variables
    3. Global variables

    Let's take an example of closure concept,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    7

    As per the above code, the inner function(i. e, greetingInfo) has access to the variables in the outer function scope(i. e, Welcome) even after the outer function has returned

  28. What are modules

    Modules refer to small units of independent, reusable code and also act as the foundation of many JavaScript design patterns. Most of the JavaScript modules export an object literal, a function, or a constructor

  29. Why do you need modules

    Below are the list of benefits using modules in javascript ecosystem

    1. Maintainability
    2. Reusability
    3. Namespacing

  30. What is scope in javascript

    Scope is the accessibility of variables, functions, and objects in some particular part of your code during runtime. In other words, scope determines the visibility of variables and other resources in areas of your code

  31. What is a service worker

    A Service worker is basically a script (JavaScript file) that runs in the background, separate from a web page and provides features that don't need a web page or user interaction. Some of the major features of service workers are Rich offline experiences(offline first web application development), periodic background syncs, push notifications, intercept and handle network requests and programmatically managing a cache of responses

  32. How do you manipulate DOM using a service worker

    Service worker can't access the DOM directly. But it can communicate with the pages it controls by responding to messages sent via the

    function func() {};
    
    new func(x, y, z);
    64 interface, and those pages can manipulate the DOM

  33. How do you reuse information across service worker restarts

    The problem with service worker is that it gets terminated when not in use, and restarted when it's next needed, so you cannot rely on global state within a service worker's

    function func() {};
    
    new func(x, y, z);
    65 and
    function func() {};
    
    new func(x, y, z);
    66 handlers. In this case, service workers will have access to IndexedDB API in order to persist and reuse across restarts

  34. What is IndexedDB

    IndexedDB is a low-level API for client-side storage of larger amounts of structured data, including files/blobs. This API uses indexes to enable high-performance searches of this data

  35. What is web storage

    Penyimpanan web adalah API yang menyediakan mekanisme di mana browser dapat menyimpan pasangan kunci/nilai secara lokal di dalam browser pengguna, dengan cara yang jauh lebih intuitif daripada menggunakan cookie. The web storage provides two mechanisms for storing data on the client

    1. Local storage. It stores data for current origin with no expiration date
    2. Session storage. It stores data for one session and the data is lost when the browser tab is closed

  36. What is a post message

    Post message is a method that enables cross-origin communication between Window objects. (i. e, between a page and a pop-up that it spawned, or between a page and an iframe embedded within it). Generally, scripts on different pages are allowed to access each other if and only if the pages follow same-origin policy(i. e, pages share the same protocol, port number, and host)

  37. A cookie is a piece of data that is stored on your computer to be accessed by your browser. Cookie disimpan sebagai pasangan kunci/nilai. For example, you can create a cookie named username as below,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    8

    Soal coding javascript untuk latihan

  38. Cookies are used to remember information about the user profile(such as username). It basically involves two steps,

    1. When a user visits a web page, the user profile can be stored in a cookie
    2. Next time the user visits the page, the cookie remembers the user profile

  39. There are few below options available for a cookie,

    1. By default, the cookie is deleted when the browser is closed but you can change this behavior by setting expiry date (in UTC time)

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _9

    1. Secara default, cookie milik halaman saat ini. But you can tell the browser what path the cookie belongs to using a path parameter

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    0

  40. You can delete a cookie by setting the expiry date as a passed date. You don't need to specify a cookie value in this case. For example, you can delete a username cookie in the current page as below

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    1

    Note. You should define the cookie path option to ensure that you delete the right cookie. Some browsers doesn't allow to delete a cookie unless you specify a path parameter

  41. Below are some of the differences between cookie, local storage and session storage,

    FeatureCookieLocal storageSession storageAccessed on client or server sideBoth server-side & client-sideclient-side onlyclient-side onlyLifetimeAs configured using Expires optionuntil deleteduntil tab is closedSSL supportSupportedNot supportedNot supportedMaximum data size4KB5 MB5MB

  42. What is the main difference between localStorage and sessionStorage

    LocalStorage is the same as SessionStorage but it persists the data even when the browser is closed and reopened(i. e it has no expiration time) whereas in sessionStorage data gets cleared when the page session ends

  43. How do you access web storage

    The Window object implements the

    function func() {};
    
    new func(x, y, z);
    67 and
    function func() {};
    
    new func(x, y, z);
    68 objects which has
    function func() {};
    
    new func(x, y, z);
    69(window. localStorage) and
    function func() {};
    
    new func(x, y, z);
    70(window. sessionStorage) properties respectively. These properties create an instance of the Storage object, through which data items can be set, retrieved and removed for a specific domain and storage type (session or local). For example, you can read and write on local storage objects as below

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    2

  44. What are the methods available on session storage

    The session storage provided methods for reading, writing and clearing the session data

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    3

  45. What is a storage event and its event handler

    The StorageEvent is an event that fires when a storage area has been changed in the context of another document. Sedangkan properti onstorage adalah EventHandler untuk memproses peristiwa penyimpanan. Sintaksnya akan seperti di bawah ini

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    4

    Let's take the example usage of onstorage event handler which logs the storage key and it's values

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    5

  46. Why do you need web storage

    Web storage is more secure, and large amounts of data can be stored locally, without affecting website performance. Also, the information is never transferred to the server. Hence this is a more recommended approach than Cookies

  47. How do you check web storage browser support

    You need to check browser support for localStorage and sessionStorage before using web storage,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    6

  48. How do you check web workers browser support

    You need to check browser support for web workers before using it

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    7

  49. Give an example of a web worker

    You need to follow below steps to start using web workers for counting example

    1. Create a Web Worker File. You need to write a script to increment the count value. Let's name it as counter. js

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    8

    Here postMessage() method is used to post a message back to the HTML page

    1. Create a Web Worker Object. You can create a web worker object by checking for browser support. Let's name this file as web_worker_example. js

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    9

    and we can receive messages from web worker

    function func() {};
    
    new func(x, y, z);
    0

    1. Terminate a Web Worker. Web workers will continue to listen for messages (even after the external script is finished) until it is terminated. You can use the terminate() method to terminate listening to the messages

    function func() {};
    
    new func(x, y, z);
    1

    1. Reuse the Web Worker. If you set the worker variable to undefined you can reuse the code

    function func() {};
    
    new func(x, y, z);
    2

  50. What are the restrictions of web workers on DOM

    WebWorkers don't have access to below javascript objects since they are defined in an external files

    1. Window object
    2. Document object
    3. Parent object

  51. What is a promise

    A promise is an object that may produce a single value some time in the future with either a resolved value or a reason that it’s not resolved(for example, network error). It will be in one of the 3 possible states. fulfilled, rejected, or pending

    The syntax of Promise creation looks like below,

    function func() {};
    
    new func(x, y, z);
    3

    The usage of a promise would be as below,

    function func() {};
    
    new func(x, y, z);
    4

    The action flow of a promise will be as below,

    Soal coding javascript untuk latihan

  52. Why do you need a promise

    Promises are used to handle asynchronous operations. They provide an alternative approach for callbacks by reducing the callback hell and writing the cleaner code

  53. What are the three states of promise

    Janji memiliki tiga keadaan

    1. Pending. This is an initial state of the Promise before an operation begins
    2. Fulfilled. This state indicates that the specified operation was completed
    3. Rejected. This state indicates that the operation did not complete. In this case an error value will be thrown

  54. What is a callback function

    A callback function is a function passed into another function as an argument. This function is invoked inside the outer function to complete an action. Let's take a simple example of how to use callback function

    function func() {};
    
    new func(x, y, z);
    5

  55. Why do we need callbacks

    The callbacks are needed because javascript is an event driven language. That means instead of waiting for a response javascript will keep executing while listening for other events. Mari kita ambil contoh dengan fungsi pertama yang memanggil panggilan API (disimulasikan oleh setTimeout) dan fungsi selanjutnya yang mencatat pesan

    function func() {};
    
    new func(x, y, z);
    _6

    As observed from the output, javascript didn't wait for the response of the first function and the remaining code block got executed. Jadi callback digunakan untuk memastikan bahwa kode tertentu tidak dijalankan sampai kode lain selesai dieksekusi

  56. What is a callback hell

    Callback Hell is an anti-pattern with multiple nested callbacks which makes code hard to read and debug when dealing with asynchronous logic. The callback hell looks like below,

    function func() {};
    
    new func(x, y, z);
    7

  57. What are server-sent events

    Server-sent events (SSE) is a server push technology enabling a browser to receive automatic updates from a server via HTTP connection without resorting to polling. These are a one way communications channel - events flow from server to client only. Ini telah digunakan dalam pembaruan Facebook/Twitter, pembaruan harga saham, umpan berita, dll

  58. Bagaimana Anda menerima pemberitahuan acara yang dikirim server

    Objek EventSource digunakan untuk menerima notifikasi event yang dikirim server. Misalnya, Anda dapat menerima pesan dari server seperti di bawah ini,

    function func() {};
    
    new func(x, y, z);
    _8

  59. Bagaimana Anda memeriksa dukungan browser untuk acara yang dikirim server

    Anda dapat melakukan dukungan browser untuk acara yang dikirim server sebelum menggunakannya seperti di bawah ini,

    function func() {};
    
    new func(x, y, z);
    _9

  60. Apa saja acara yang tersedia untuk acara yang dikirim server

    Di bawah ini adalah daftar acara yang tersedia untuk acara yang dikirim server

    EventDescriptiononopenDigunakan ketika koneksi ke server dibuka pada pesanKejadian ini digunakan ketika pesan diterima pada kesalahanTerjadi ketika terjadi kesalahan

  61. Apa aturan utama janji

    Janji harus mengikuti seperangkat aturan tertentu,

    1. Janji adalah objek yang memasok metode ________5______71 yang sesuai standar
    2. Janji yang tertunda dapat beralih ke status dipenuhi atau ditolak
    3. Janji yang dipenuhi atau ditolak diselesaikan dan tidak boleh beralih ke keadaan lain mana pun
    4. Setelah janji diselesaikan, nilainya tidak boleh berubah

  62. Apa itu panggilan balik dalam panggilan balik

    Anda dapat menyarangkan satu panggilan balik di dalam panggilan balik lain untuk menjalankan tindakan secara berurutan satu per satu. Ini dikenal sebagai panggilan balik dalam panggilan balik

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _0

  63. Apa itu rantai janji

    Proses mengeksekusi urutan tugas asinkron satu demi satu menggunakan janji dikenal sebagai rantai Janji. Mari kita ambil contoh dari promise chaining untuk menghitung hasil akhir,

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _1

    Pada penangan di atas, hasilnya diteruskan ke rantai. kemudian() penangan dengan alur kerja di bawah ini,

    1. Janji awal selesai dalam 1 detik,
    2. Setelah itu
      function func() {};
      
      new func(x, y, z);
      _72 handler dipanggil dengan mencatat hasil (1) dan kemudian mengembalikan janji dengan nilai hasil * 2
    3. Setelah itu nilai diteruskan ke penangan
      function func() {};
      
      new func(x, y, z);
      _72 berikutnya dengan mencatat hasil (2) dan mengembalikan janji dengan hasil * 3
    4. Akhirnya nilai diteruskan ke penangan
      function func() {};
      
      new func(x, y, z);
      _72 terakhir dengan mencatat hasil (6) dan mengembalikan janji dengan hasil * 4

  64. Apa itu janji. semua

    Janji. all adalah janji yang mengambil serangkaian janji sebagai input (dapat diubah), dan itu diselesaikan ketika semua janji diselesaikan atau salah satu dari janji itu ditolak. Misalnya, sintaks janji. semua metode di bawah ini,

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _2

    Catatan. Ingatlah bahwa urutan janji (menghasilkan hasilnya) dipertahankan sesuai urutan input

  65. Apa tujuan dari metode balapan yang dijanjikan

    Janji. race() metode akan mengembalikan instance janji yang pertama kali diselesaikan atau ditolak. Let's take an example of race() method where promise2 is resolved first

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    3

  66. What is a strict mode in javascript

    Strict Mode is a new feature in ECMAScript 5 that allows you to place a program, or a function, in a “strict” operating context. This way it prevents certain actions from being taken and throws more exceptions. The literal expression

    function func() {};
    
    new func(x, y, z);
    75 instructs the browser to use the javascript code in the Strict mode

  67. Why do you need strict mode

    Strict mode is useful to write "secure" JavaScript by notifying "bad syntax" into real errors. For example, it eliminates accidentally creating a global variable by throwing an error and also throws an error for assignment to a non-writable property, a getter-only property, a non-existing property, a non-existing variable, or a non-existing object

  68. How do you declare strict mode

    The strict mode is declared by adding "use strict"; to the beginning of a script or a function. If declared at the beginning of a script, it has global scope

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    4

    and if you declare inside a function, it has local scope

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    5

  69. What is the purpose of double exclamation

    The double exclamation or negation(. ) ensures the resulting type is a boolean. If it was falsey (e. g. 0, null, undefined, etc. ), it will be false, otherwise, true. For example, you can test IE version using this expression as below,

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    6

    If you don't use this expression then it returns the original value

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    7

    Note. The expression . is not an operator, but it is just twice of . operator

  70. What is the purpose of the delete operator

    The delete keyword is used to delete the property as well as its value

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    8

  71. What is typeof operator

    You can use the JavaScript typeof operator to find the type of a JavaScript variable. It returns the type of a variable or an expression

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    9

  72. What is undefined property

    The undefined property indicates that a variable has not been assigned a value, or declared but not initialized at all. The type of undefined value is undefined too

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    0

    Any variable can be emptied by setting the value to undefined

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    1

  73. What is null value

    The value null represents the intentional absence of any object value. Ini adalah salah satu nilai primitif JavaScript. The type of null value is object. You can empty the variable by setting the value to null

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    2

  74. What is the difference between null and undefined

    Below are the main differences between null and undefined,

    NullUndefinedIt is an assignment value which indicates that variable points to no object. It is not an assignment value where a variable has been declared but has not yet been assigned a value. Type of null is objectType of undefined is undefinedThe null value is a primitive value that represents the null, empty, or non-existent reference. The undefined value is a primitive value used when a variable has not been assigned a value. Indicates the absence of a value for a variableIndicates absence of variable itselfConverted to zero (0) while performing primitive operationsConverted to NaN while performing primitive operations

  75. What is eval

    The eval() function evaluates JavaScript code represented as a string. The string can be a JavaScript expression, variable, statement, or sequence of statements

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    3

  76. What is the difference between window and document

    Below are the main differences between window and document,

    WindowDocumentIt is the root level element in any web pageIt is the direct child of the window object. This is also known as Document Object Model(DOM)By default window object is available implicitly in the pageYou can access it via window. document or document. It has methods like alert(), confirm() and properties like document, locationIt provides methods like getElementById, getElementsByTagName, createElement etc

  77. Bagaimana Anda mengakses riwayat dalam javascript

    The window. history object contains the browser's history. You can load previous and next URLs in the history using back() and next() methods

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    4

    Note. You can also access history without window prefix

  78. Bagaimana Anda mendeteksi tombol caps lock dihidupkan atau tidak

    The

    function func() {};
    
    new func(x, y, z);
    76 is used to return a boolean value that indicates whether the specified modifier key is activated or not. The modifiers such as CapsLock, ScrollLock and NumLock are activated when they are clicked, and deactivated when they are clicked again

    Let's take an input element to detect the CapsLock on/off behavior with an example,

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    5

  79. What is isNaN

    The isNaN() function is used to determine whether a value is an illegal number (Not-a-Number) or not. i. e, This function returns true if the value equates to NaN. Otherwise it returns false

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    6

  80. What are the differences between undeclared and undefined variables

    Below are the major differences between undeclared(not defined) and undefined variables,

    undeclaredundefinedThese variables do not exist in a program and are not declaredThese variables declared in the program but have not assigned any valueIf you try to read the value of an undeclared variable, then a runtime error is encounteredIf you try to read the value of an undefined variable, an undefined value is returned

  81. What are global variables

    Global variables are those that are available throughout the length of the code without any scope. The var keyword is used to declare a local variable but if you omit it then it will become global variable

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    7

  82. What are the problems with global variables

    The problem with global variables is the conflict of variable names of local and global scope. It is also difficult to debug and test the code that relies on global variables

  83. What is NaN property

    The NaN property is a global property that represents "Not-a-Number" value. i. e, It indicates that a value is not a legal number. It is very rare to use NaN in a program but it can be used as return value for few cases

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    8

  84. Apa tujuan dari fungsi isFinite

    The isFinite() function is used to determine whether a number is a finite, legal number. It returns false if the value is +infinity, -infinity, or NaN (Not-a-Number), otherwise it returns true

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    9

  85. What is an event flow

    Event flow is the order in which event is received on the web page. When you click an element that is nested in various other elements, before your click actually reaches its destination, or target element, it must trigger the click event for each of its parent elements first, starting at the top with the global window object. There are two ways of event flow

    1. Top to Bottom(Event Capturing)
    2. Bottom to Top (Event Bubbling)

  86. What is event bubbling

    Event bubbling is a type of event propagation where the event first triggers on the innermost target element, and then successively triggers on the ancestors (parents) of the target element in the same nesting hierarchy till it reaches the outermost DOM element

  87. What is event capturing

    Event capturing is a type of event propagation where the event is first captured by the outermost element, and then successively triggers on the descendants (children) of the target element in the same nesting hierarchy till it reaches the innermost DOM element

  88. How do you submit a form using JavaScript

    You can submit a form using

    function func() {};
    
    new func(x, y, z);
    77. All the form input's information is submitted using onsubmit event handler

    var object = new (function () {
      this.name = "Sudheer";
    })();
    0

  89. How do you find operating system details

    The window. navigator object contains information about the visitor's browser OS details. Some of the OS properties are available under platform property,

    var object = new (function () {
      this.name = "Sudheer";
    })();
    1

  90. What is the difference between document load and DOMContentLoaded events

    The

    function func() {};
    
    new func(x, y, z);
    78 event is fired when the initial HTML document has been completely loaded and parsed, without waiting for assets(stylesheets, images, and subframes) to finish loading. Whereas The load event is fired when the whole page has loaded, including all dependent resources(stylesheets, images)

  91. What is the difference between native, host and user objects

    function func() {};
    
    new func(x, y, z);
    79 are objects that are part of the JavaScript language defined by the ECMAScript specification. For example, String, Math, RegExp, Object, Function etc core objects defined in the ECMAScript spec.
    function func() {};
    
    new func(x, y, z);
    80 are objects provided by the browser or runtime environment (Node). For example, window, XmlHttpRequest, DOM nodes etc are considered as host objects.
    function func() {};
    
    new func(x, y, z);
    81 are objects defined in the javascript code. For example, User objects created for profile information

  92. What are the tools or techniques used for debugging JavaScript code

    You can use below tools or techniques for debugging javascript

    1. Chrome Devtools
    2. debugger statement
    3. Good old console. log statement

  93. What are the pros and cons of promises over callbacks

    Below are the list of pros and cons of promises over callbacks,

    Pros

    1. It avoids callback hell which is unreadable
    2. Easy to write sequential asynchronous code with . then()
    3. Easy to write parallel asynchronous code with Promise. all()
    4. Solves some of the common problems of callbacks(call the callback too late, too early, many times and swallow errors/exceptions)

    Cons

    1. It makes little complex code
    2. You need to load a polyfill if ES6 is not supported

  94. What is the difference between an attribute and a property

    Attributes are defined on the HTML markup whereas properties are defined on the DOM. For example, the below HTML element has 2 attributes type and value,

    var object = new (function () {
      this.name = "Sudheer";
    })();
    2

    You can retrieve the attribute value as below,

    var object = new (function () {
      this.name = "Sudheer";
    })();
    _3

    And after you change the value of the text field to "Good evening", it becomes like

    var object = new (function () {
      this.name = "Sudheer";
    })();
    4

  95. What is same-origin policy

    The same-origin policy is a policy that prevents JavaScript from making requests across domain boundaries. An origin is defined as a combination of URI scheme, hostname, and port number. If you enable this policy then it prevents a malicious script on one page from obtaining access to sensitive data on another web page using Document Object Model(DOM)

  96. What is the purpose of void 0

    Void(0) is used to prevent the page from refreshing. This will be helpful to eliminate the unwanted side-effect, because it will return the undefined primitive value. It is commonly used for HTML documents that use href="JavaScript. Void(0);" within an

    function func() {};
    
    new func(x, y, z);
    82 element. i. e, when you click a link, the browser loads a new page or refreshes the same page. But this behavior will be prevented using this expression. For example, the below link notify the message without reloading the page

    var object = new (function () {
      this.name = "Sudheer";
    })();
    5

  97. Is JavaScript a compiled or interpreted language

    JavaScript adalah bahasa yang ditafsirkan, bukan bahasa yang dikompilasi. An interpreter in the browser reads over the JavaScript code, interprets each line, and runs it. Saat ini browser modern menggunakan teknologi yang dikenal sebagai kompilasi Just-In-Time (JIT), yang mengkompilasi JavaScript menjadi bytecode yang dapat dieksekusi saat akan dijalankan.

  98. Apakah JavaScript peka huruf besar-kecil

    Ya, JavaScript adalah bahasa yang peka terhadap huruf besar-kecil. Kata kunci bahasa, variabel, nama fungsi & objek, dan pengidentifikasi lainnya harus selalu diketik dengan kapitalisasi huruf yang konsisten

  99. Apakah ada hubungan antara Java dan JavaScript

    No, they are entirely two different programming languages and have nothing to do with each other. Tetapi keduanya adalah bahasa Pemrograman Berorientasi Objek dan seperti banyak bahasa lainnya, mereka mengikuti sintaks yang sama untuk fitur dasar (jika, jika tidak, untuk, beralih, istirahat, lanjutkan dll)

  100. Apa itu peristiwa

    Acara adalah "hal-hal" yang terjadi pada elemen HTML. Saat JavaScript digunakan di halaman HTML, JavaScript dapat

    function func() {};
    
    new func(x, y, z);
    83 pada peristiwa ini. Some of the examples of HTML events are,

    1. Web page has finished loading
    2. Input field was changed
    3. Button was clicked

    Let's describe the behavior of click event for button element,

    var object = new (function () {
      this.name = "Sudheer";
    })();
    6

  101. Who created javascript

    JavaScript was created by Brendan Eich in 1995 during his time at Netscape Communications. Initially it was developed under the name

    function func() {};
    
    new func(x, y, z);
    84, but later the language was officially called
    function func() {};
    
    new func(x, y, z);
    85 when it first shipped in beta releases of Netscape

  102. What is the use of preventDefault method

    The preventDefault() method cancels the event if it is cancelable, meaning that the default action or behaviour that belongs to the event will not occur. For example, prevent form submission when clicking on submit button and prevent opening the page URL when clicking on hyperlink are some common use cases

    var object = new (function () {
      this.name = "Sudheer";
    })();
    7

    Note. Remember that not all events are cancelable

  103. What is the use of stopPropagation method

    The stopPropagation method is used to stop the event from bubbling up the event chain. For example, the below nested divs with stopPropagation method prevents default event propagation when clicking on nested div(Div1)

    var object = new (function () {
      this.name = "Sudheer";
    })();
    8

  104. What are the steps involved in return false usage

    The return false statement in event handlers performs the below steps,

    1. First it stops the browser's default action or behaviour
    2. It prevents the event from propagating the DOM
    3. Stops callback execution and returns immediately when called

  105. What is BOM

    The Browser Object Model (BOM) allows JavaScript to "talk to" the browser. Ini terdiri dari navigator objek, sejarah, layar, lokasi dan dokumen yang merupakan anak-anak dari jendela. The Browser Object Model is not standardized and can change based on different browsers

    Soal coding javascript untuk latihan

  106. What is the use of setTimeout

    The setTimeout() method is used to call a function or evaluate an expression after a specified number of milliseconds. For example, let's log a message after 2 seconds using setTimeout method,

    var object = new (function () {
      this.name = "Sudheer";
    })();
    9

  107. What is the use of setInterval

    The setInterval() method is used to call a function or evaluate an expression at specified intervals (in milliseconds). For example, let's log a message after 2 seconds using setInterval method,

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    0

  108. Why is JavaScript treated as Single threaded

    JavaScript is a single-threaded language. Because the language specification does not allow the programmer to write code so that the interpreter can run parts of it in parallel in multiple threads or processes. Whereas languages like java, go, C++ can make multi-threaded and multi-process programs

  109. What is an event delegation

    Event delegation is a technique for listening to events where you delegate a parent element as the listener for all of the events that happen inside it

    For example, if you wanted to detect field changes in inside a specific form, you can use event delegation technique,

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    1

  110. What is ECMAScript

    ECMAScript is the scripting language that forms the basis of JavaScript. ECMAScript standardized by the ECMA International standards organization in the ECMA-262 and ECMA-402 specifications. The first edition of ECMAScript was released in 1997

  111. What is JSON

    JSON (JavaScript Object Notation) is a lightweight format that is used for data interchanging. It is based on a subset of JavaScript language in the way objects are built in JavaScript

  112. What are the syntax rules of JSON

    Below are the list of syntax rules of JSON

    1. The data is in name/value pairs
    2. The data is separated by commas
    3. Curly braces hold objects
    4. Square brackets hold arrays

  113. What is the purpose JSON stringify

    When sending data to a web server, the data has to be in a string format. You can achieve this by converting JSON object into a string using stringify() method

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    2

  114. How do you parse JSON string

    When receiving the data from a web server, the data is always in a string format. But you can convert this string value to a javascript object using parse() method

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    3

  115. Why do you need JSON

    When exchanging data between a browser and a server, the data can only be text. Since JSON is text only, it can easily be sent to and from a server, and used as a data format by any programming language

  116. What are PWAs

    Progressive web applications (PWAs) are a type of mobile app delivered through the web, built using common web technologies including HTML, CSS and JavaScript. These PWAs are deployed to servers, accessible through URLs, and indexed by search engines

  117. What is the purpose of clearTimeout method

    The clearTimeout() function is used in javascript to clear the timeout which has been set by setTimeout()function before that. i. e, The return value of setTimeout() function is stored in a variable and it’s passed into the clearTimeout() function to clear the timer

    For example, the below setTimeout method is used to display the message after 3 seconds. This timeout can be cleared by the clearTimeout() method

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    4

  118. What is the purpose of clearInterval method

    The clearInterval() function is used in javascript to clear the interval which has been set by setInterval() function. i. e, The return value returned by setInterval() function is stored in a variable and it’s passed into the clearInterval() function to clear the interval

    For example, the below setInterval method is used to display the message for every 3 seconds. This interval can be cleared by the clearInterval() method

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    5

  119. How do you redirect new page in javascript

    In vanilla javascript, you can redirect to a new page using the

    function func() {};
    
    new func(x, y, z);
    86 property of window object. The syntax would be as follows,

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    6

  120. How do you check whether a string contains a substring

    There are 3 possible ways to check whether a string contains a substring or not,

    1. Using includes. ES6 provided
      function func() {};
      
      new func(x, y, z);
      87 method to test a string contains a substring

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    7

    1. Menggunakan indexOf. In an ES5 or older environment, you can use
      function func() {};
      
      new func(x, y, z);
      88 which returns the index of a substring. If the index value is not equal to -1 then it means the substring exists in the main string

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    8

    1. Using RegEx. The advanced solution is using Regular expression's test method(
      function func() {};
      
      new func(x, y, z);
      89), which allows for testing for against regular expressions

    var employee1 = { firstName: "John", lastName: "Rodson" };
    var employee2 = { firstName: "Jimmy", lastName: "Baily" };
    
    function invite(greeting1, greeting2) {
      console.log(
        greeting1 + " " + this.firstName + " " + this.lastName + ", " + greeting2
      );
    }
    
    invite.call(employee1, "Hello", "How are you?"); // Hello John Rodson, How are you?
    invite.call(employee2, "Hello", "How are you?"); // Hello Jimmy Baily, How are you?
    9

  121. How do you validate an email in javascript

    You can validate an email in javascript using regular expressions. It is recommended to do validations on the server side instead of the client side. Because the javascript can be disabled on the client side

    var object = Object.create(null);
    00

    The above regular expression accepts unicode characters

  122. How do you get the current url with javascript

    You can use

    function func() {};
    
    new func(x, y, z);
    90 expression to get the current url path and you can use the same expression for updating the URL too. You can also use
    function func() {};
    
    new func(x, y, z);
    91 for read-only purposes but this solution has issues in FF

    var object = Object.create(null);
    01

  123. What are the various url properties of location object

    The below

    function func() {};
    
    new func(x, y, z);
    92 object properties can be used to access URL components of the page,

    1. href - The entire URL
    2. protocol - The protocol of the URL
    3. host - The hostname and port of the URL
    4. hostname - The hostname of the URL
    5. port - The port number in the URL
    6. pathname - The path name of the URL
    7. search - The query portion of the URL
    8. hash - The anchor portion of the URL

  124. How do get query string values in javascript

    You can use URLSearchParams to get query string values in javascript. Let's see an example to get the client code value from URL query string,

    var object = Object.create(null);
    02

  125. How do you check if a key exists in an object

    You can check whether a key exists in an object or not using three approaches,

    1. Using in operator. You can use the in operator whether a key exists in an object or not

    var object = Object.create(null);
    03

    and If you want to check if a key doesn't exist, remember to use parenthesis,

    var object = Object.create(null);
    04

    1. Using hasOwnProperty method. You can use
      function func() {};
      
      new func(x, y, z);
      93 to particularly test for properties of the object instance (and not inherited properties)

    var object = Object.create(null);
    05

    1. Using undefined comparison. If you access a non-existing property from an object, the result is undefined. Let’s compare the properties against undefined to determine the existence of the property

    var object = Object.create(null);
    06

  126. How do you loop through or enumerate javascript object

    You can use the

    function func() {};
    
    new func(x, y, z);
    94 loop to loop through javascript object. You can also make sure that the key you get is an actual property of an object, and doesn't come from the prototype using
    function func() {};
    
    new func(x, y, z);
    93 method

    var object = Object.create(null);
    07

  127. How do you test for an empty object

    There are different solutions based on ECMAScript versions

    1. Using Object entries(ECMA 7+). You can use object entries length along with constructor type

    var object = Object.create(null);
    08

    1. Using Object keys(ECMA 5+). You can use object keys length along with constructor type

    var object = Object.create(null);
    09

    1. Using for-in with hasOwnProperty(Pre-ECMA 5). You can use a for-in loop along with hasOwnProperty

    var object = Object.create(null);
    10

  128. What is an arguments object

    The arguments object is an Array-like object accessible inside functions that contains the values of the arguments passed to that function. For example, let's see how to use arguments object inside sum function,

    var object = Object.create(null);
    11

    Note. You can't apply array methods on arguments object. But you can convert into a regular array as below

    var object = Object.create(null);
    12

  129. How do you make first letter of the string in an uppercase

    You can create a function which uses a chain of string methods such as charAt, toUpperCase and slice methods to generate a string with the first letter in uppercase

    var object = Object.create(null);
    13

  130. What are the pros and cons of for loop

    The for-loop is a commonly used iteration syntax in javascript. It has both pros and cons

    Pros

    1. Works on every environment
    2. You can use break and continue flow control statements

    Cons

    1. Too verbose
    2. Imperative
    3. You might face one-by-off errors

  131. How do you display the current date in javascript

    You can use

    function func() {};
    
    new func(x, y, z);
    96 to generate a new Date object containing the current date and time. For example, let's display the current date in mm/dd/yyyy

    var object = Object.create(null);
    14

  132. How do you compare two date objects

    You need to use date. getTime() method to compare date values instead of comparison operators (==, . =, ===, and . == operators)

    var object = Object.create(null);
    15

  133. How do you check if a string starts with another string

    You can use ECMAScript 6's

    function func() {};
    
    new func(x, y, z);
    97 method to check if a string starts with another string or not. But it is not yet supported in all browsers. Let's see an example to see this usage,

    var object = Object.create(null);
    16

  134. How do you trim a string in javascript

    JavaScript provided a trim method on string types to trim any whitespaces present at the beginning or ending of the string

    var object = Object.create(null);
    17

    If your browser(

    var object = Object.create(null);
    18

  135. How do you add a key value pair in javascript

    There are two possible solutions to add new properties to an object. Let's take a simple object to explain these solutions

    var object = Object.create(null);
    19

    1. Using dot notation. This solution is useful when you know the name of the property

    var object = Object.create(null);
    20

    1. Using square bracket notation. This solution is useful when the name of the property is dynamically determined

    var object = Object.create(null);
    21

  136. Is the . -- notation represents a special operator

    No,that's not a special operator. Tapi itu adalah kombinasi dari 2 operator standar satu demi satu,

    1. A logical not (. )
    2. A prefix decrement (--)

    At first, the value decremented by one and then tested to see if it is equal to zero or not for determining the truthy/falsy value

  137. Bagaimana Anda menetapkan nilai default ke variabel

    You can use the logical or operator

    function func() {};
    
    new func(x, y, z);
    98 in an assignment expression to provide a default value. The syntax looks like as below,

    var object = Object.create(null);
    22

    As per the above expression, variable 'a 'will get the value of 'c' only if 'b' is falsy (if is null, false, undefined, 0, empty string, or NaN), otherwise 'a' will get the value of 'b'

  138. How do you define multiline strings

    You can define multiline string literals using the '\' character followed by line terminator

    var object = Object.create(null);
    23

    Tetapi jika Anda memiliki spasi setelah karakter '\', kode akan terlihat persis sama, tetapi akan memunculkan SyntaxError

  139. Apa itu model shell aplikasi

    An application shell (or app shell) architecture is one way to build a Progressive Web App that reliably and instantly loads on your users' screens, similar to what you see in native applications. It is useful for getting some initial HTML to the screen fast without a network

  140. Can we define properties for functions

    Yes, We can define properties for functions because functions are also objects

    var object = Object.create(null);
    24

  141. What is the way to find the number of parameters expected by a function

    You can use

    function func() {};
    
    new func(x, y, z);
    99 syntax to find the number of parameters expected by a function. Let's take an example of
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    00 function to calculate the sum of numbers,

    var object = Object.create(null);
    25

  142. What is a polyfill

    A polyfill is a piece of JS code used to provide modern functionality on older browsers that do not natively support it. For example, Silverlight plugin polyfill can be used to mimic the functionality of an HTML Canvas element on Microsoft Internet Explorer 7

  143. What are break and continue statements

    The break statement is used to "jump out" of a loop. i. e, It breaks the loop and continues executing the code after the loop

    var object = Object.create(null);
    26

    The continue statement is used to "jump over" one iteration in the loop. i. e, It breaks one iteration (in the loop), if a specified condition occurs, and continues with the next iteration in the loop

    var object = Object.create(null);
    27

  144. What are js labels

    The label statement allows us to name loops and blocks in JavaScript. We can then use these labels to refer back to the code later. For example, the below code with labels avoids printing the numbers when they are same,

    var object = Object.create(null);
    28

  145. What are the benefits of keeping declarations at the top

    It is recommended to keep all declarations at the top of each script or function. The benefits of doing this are,

    1. Gives cleaner code
    2. It provides a single place to look for local variables
    3. Easy to avoid unwanted global variables
    4. It reduces the possibility of unwanted re-declarations

  146. What are the benefits of initializing variables

    It is recommended to initialize variables because of the below benefits,

    1. It gives cleaner code
    2. It provides a single place to initialize variables
    3. Avoid undefined values in the code

  147. What are the recommendations to create new object

    It is recommended to avoid creating new objects using

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    01. Instead you can initialize values based on it's type to create the objects

    1. Assign {} instead of new Object()
    2. Assign "" instead of new String()
    3. Assign 0 instead of new Number()
    4. Assign false instead of new Boolean()
    5. Assign [] instead of new Array()
    6. Assign /()/ instead of new RegExp()
    7. Assign function (){} instead of new Function()

    You can define them as an example,

    var object = Object.create(null);
    29

  148. How do you define JSON arrays

    JSON arrays are written inside square brackets and arrays contain javascript objects. For example, the JSON array of users would be as below,

    var object = Object.create(null);
    30

  149. How do you generate random integers

    You can use Math. random() with Math. floor() to return random integers. For example, if you want generate random integers between 1 to 10, the multiplication factor should be 10,

    var object = Object.create(null);
    31

    Note. Math. random() returns a random number between 0 (inclusive), and 1 (exclusive)

  150. Can you write a random integers function to print integers with in a range

    Yes, you can create a proper random function to return a random number between min and max (both included)

    var object = Object.create(null);
    32

  151. What is tree shaking

    Tree shaking is a form of dead code elimination. It means that unused modules will not be included in the bundle during the build process and for that it relies on the static structure of ES2015 module syntax,( i. e. import and export). Initially this has been popularized by the ES2015 module bundler

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    02

  152. What is the need of tree shaking

    Tree Shaking can significantly reduce the code size in any application. i. e, The less code we send over the wire the more performant the application will be. For example, if we just want to create a “Hello World” Application using SPA frameworks then it will take around a few MBs, but by tree shaking it can bring down the size to just a few hundred KBs. Tree shaking is implemented in Rollup and Webpack bundlers

  153. No, it allows arbitrary code to be run which causes a security problem. As we know that the eval() function is used to run text as code. In most of the cases, it should not be necessary to use it

  154. What is a Regular Expression

    A regular expression is a sequence of characters that forms a search pattern. You can use this search pattern for searching data in a text. These can be used to perform all types of text search and text replace operations. Let's see the syntax format now,

    var object = Object.create(null);
    33

    For example, the regular expression or search pattern with case-insensitive username would be,

    var object = Object.create(null);
    34

  155. What are the string methods available in Regular expression

    Regular Expressions has two string methods. search() and replace(). The search() method uses an expression to search for a match, and returns the position of the match

    var object = Object.create(null);
    35

    The replace() method is used to return a modified string where the pattern is replaced

    var object = Object.create(null);
    36

  156. What are modifiers in regular expression

    Modifiers can be used to perform case-insensitive and global searches. Let's list down some of the modifiers,

    ModifierDescriptioniPerform case-insensitive matchinggPerform a global match rather than stops at first matchmPerform multiline matching

    Let's take an example of global modifier,

    var object = Object.create(null);
    37

  157. What are regular expression patterns

    Regular Expressions provide a group of patterns in order to match characters. Pada dasarnya mereka dikategorikan menjadi 3 jenis,

    1. Brackets. These are used to find a range of characters. For example, below are some use cases,
      1. [abc]. Used to find any of the characters between the brackets(a,b,c)
      2. [0-9]. Used to find any of the digits between the brackets
      3. (A. B). Digunakan untuk menemukan salah satu alternatif yang dipisahkan dengan
    2. Metacharacters. These are characters with a special meaning For example, below are some use cases,
      1. \d. Used to find a digit
      2. \s. Used to find a whitespace character
      3. \b. Used to find a match at the beginning or ending of a word
    3. Quantifiers. These are useful to define quantities For example, below are some use cases,
      1. n+. Used to find matches for any string that contains at least one n
      2. n*. Used to find matches for any string that contains zero or more occurrences of n
      3. n?. Used to find matches for any string that contains zero or one occurrences of n

  158. What is a RegExp object

    RegExp object is a regular expression object with predefined properties and methods. Let's see the simple usage of RegExp object,

    var object = Object.create(null);
    38

  159. How do you search a string for a pattern

    You can use the test() method of regular expression in order to search a string for a pattern, and return true or false depending on the result

    var object = Object.create(null);
    39

  160. What is the purpose of exec method

    The purpose of exec method is similar to test method but it executes a search for a match in a specified string and returns a result array, or null instead of returning true/false

    var object = Object.create(null);
    40

  161. How do you change the style of a HTML element

    You can change inline style or classname of a HTML element using javascript

    1. Using style property. You can modify inline style using style property

    var object = Object.create(null);
    41

    1. Using ClassName property. It is easy to modify element class using className property

    var object = Object.create(null);
    42

  162. What would be the result of 1+2+'3'

    The output is going to be

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    03. Since
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    04 and
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    05 are numeric values, the result of the first two digits is going to be a numeric value
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    06. The next digit is a string type value because of that the addition of numeric value
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    06 and string type value
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    06 is just going to be a concatenation value
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    03

  163. What is a debugger statement

    The debugger statement invokes any available debugging functionality, such as setting a breakpoint. If no debugging functionality is available, this statement has no effect. For example, in the below function a debugger statement has been inserted. So execution is paused at the debugger statement just like a breakpoint in the script source

    var object = Object.create(null);
    43

  164. What is the purpose of breakpoints in debugging

    You can set breakpoints in the javascript code once the debugger statement is executed and the debugger window pops up. At each breakpoint, javascript will stop executing, and let you examine the JavaScript values. After examining values, you can resume the execution of code using the play button

  165. Can I use reserved words as identifiers

    No, you cannot use the reserved words as variables, labels, object or function names. Let's see one simple example,

    var object = Object.create(null);
    44

  166. How do you detect a mobile browser

    You can use regex which returns a true or false value depending on whether or not the user is browsing with a mobile

    var object = Object.create(null);
    45

  167. How do you detect a mobile browser without regexp

    You can detect mobile browsers by simply running through a list of devices and checking if the useragent matches anything. This is an alternative solution for RegExp usage,

    var object = Object.create(null);
    46

  168. How do you get the image width and height using JS

    You can programmatically get the image and check the dimensions(width and height) using Javascript

    var object = Object.create(null);
    47

  169. How do you make synchronous HTTP request

    Browser menyediakan objek XMLHttpRequest yang dapat digunakan untuk membuat permintaan HTTP sinkron dari JavaScript

    var object = Object.create(null);
    48

  170. How do you make asynchronous HTTP request

    Browsers provide an XMLHttpRequest object which can be used to make asynchronous HTTP requests from JavaScript by passing the 3rd parameter as true

    var object = Object.create(null);
    49

  171. How do you convert date to another timezone in javascript

    You can use the toLocaleString() method to convert dates in one timezone to another. For example, let's convert current date to British English timezone as below,

    var object = Object.create(null);
    50

  172. What are the properties used to get size of window

    You can use innerWidth, innerHeight, clientWidth, clientHeight properties of windows, document element and document body objects to find the size of a window. Let's use them combination of these properties to calculate the size of a window or document,

    var object = Object.create(null);
    51

  173. What is a conditional operator in javascript

    The conditional (ternary) operator is the only JavaScript operator that takes three operands which acts as a shortcut for if statements

    var object = Object.create(null);
    52

  174. Can you apply chaining on conditional operator

    Yes, you can apply chaining on conditional operators similar to if … else if … else if … else chain. The syntax is going to be as below,

    var object = Object.create(null);
    53

  175. What are the ways to execute javascript after page load

    You can execute javascript after page load in many different ways,

    1. window. onload

    var object = Object.create(null);
    54

    1. document. onload

    var object = Object.create(null);
    55

    1. beban tubuh

    var object = Object.create(null);
    56

  176. What is the difference between proto and prototype

    The

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    10 object is the actual object that is used in the lookup chain to resolve methods, etc. Whereas
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    11 is the object that is used to build
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    10 when you create an object with new

    var object = Object.create(null);
    _57

    There are few more differences,

    featurePrototypeprotoAccessAll the function constructors have prototype properties. All the objects have __proto__ propertyPurposeUsed to reduce memory wastage with a single copy of functionUsed in lookup chain to resolve methods, constructors etc. ECMAScriptIntroduced in ES6Introduced in ES5UsageFrequently usedRarely used

  177. Give an example where do you really need semicolon

    It is recommended to use semicolons after every statement in JavaScript. For example, in the below case it throws an error ". is not a function" at runtime due to missing semicolon

    var object = Object.create(null);
    _58

    and it will be interpreted as

    var object = Object.create(null);
    59

    In this case, we are passing the second function as an argument to the first function and then trying to call the result of the first function call as a function. Hence, the second function will fail with a ". is not a function" error at runtime

  178. What is a freeze method

    The freeze() method is used to freeze an object. Freezing an object does not allow adding new properties to an object,prevents from removing and prevents changing the enumerability, configurability, or writability of existing properties. i. e, It returns the passed object and does not create a frozen copy

    var object = Object.create(null);
    60

    Remember freezing is only applied to the top-level properties in objects but not for nested objects. For example, let's try to freeze user object which has employment details as nested object and observe that details have been changed

    var object = Object.create(null);
    61

    Catatan. It causes a TypeError if the argument passed is not an object

  179. What is the purpose of freeze method

    Below are the main benefits of using freeze method,

    1. It is used for freezing objects and arrays
    2. It is used to make an object immutable

  180. Why do I need to use freeze method

    In the Object-oriented paradigm, an existing API contains certain elements that are not intended to be extended, modified, or re-used outside of their current context. Hence it works as the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    13 keyword which is used in various languages

  181. How do you detect a browser language preference

    You can use navigator object to detect a browser language preference as below,

    var object = Object.create(null);
    62

  182. How to convert string to title case with javascript

    Title case means that the first letter of each word is capitalized. You can convert a string to title case using the below function,

    var object = Object.create(null);
    63

  183. How do you detect javascript disabled in the page

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    14 tag to detect javascript disabled or not. The code block inside
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    14 gets executed when JavaScript is disabled, and is typically used to display alternative content when the page generated in JavaScript

    var object = Object.create(null);
    64

  184. What are various operators supported by javascript

    An operator is capable of manipulating(mathematical and logical computations) a certain value or operand. There are various operators supported by JavaScript as below,

    1. Arithmetic Operators. Includes + (Addition),– (Subtraction), * (Multiplication), / (Division), % (Modulus), + + (Increment) and – – (Decrement)
    2. Comparison Operators. Includes = =(Equal),. = (Not Equal), ===(Equal with type), > (Greater than),> = (Greater than or Equal to),< (Less than),<= (Less than or Equal to)
    3. Logical Operators. Includes &&(Logical AND),. (Logical OR),. (Logical NOT)
    4. Assignment Operators. Includes = (Assignment Operator), += (Add and Assignment Operator), – = (Subtract and Assignment Operator), *= (Multiply and Assignment), /= (Divide and Assignment), %= (Modules and Assignment)
    5. Ternary Operators. It includes conditional(. ?) Operator
    6. typeof Operator. It uses to find type of variable. The syntax looks like
      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      16

  185. What is a rest parameter

    Rest parameter is an improved way to handle function parameters which allows us to represent an indefinite number of arguments as an array. The syntax would be as below,

    var object = Object.create(null);
    65

    For example, let's take a sum example to calculate on dynamic number of parameters,

    var object = Object.create(null);
    66

    Note. Rest parameter is added in ES2015 or ES6

  186. What happens if you do not use rest parameter as a last argument

    The rest parameter should be the last argument, as its job is to collect all the remaining arguments into an array. For example, if you define a function like below it doesn’t make any sense and will throw an error

    var object = Object.create(null);
    67

  187. What are the bitwise operators available in javascript

    Below are the list of bitwise logical operators used in JavaScript

    1. Bitwise AND ( & )
    2. Searah bit ATAU (. )
    3. Bitwise XOR ( ^ )
    4. Bitwise NOT ( ~ )
    5. Pergeseran Kiri ( << )
    6. Sign Propagating Right Shift ( >> )
    7. Zero fill Right Shift ( >>> )

  188. What is a spread operator

    Spread operator allows iterables( arrays / objects / strings ) to be expanded into single arguments/elements. Let's take an example to see this behavior,

    var object = Object.create(null);
    68

  189. How do you determine whether object is frozen or not

    Object. isFrozen() method is used to determine if an object is frozen or not. An object is frozen if all of the below conditions hold true,

    1. If it is not extensible
    2. If all of its properties are non-configurable
    3. If all its data properties are non-writable. The usage is going to be as follows,

    var object = Object.create(null);
    69

  190. How do you determine two values same or not using object

    The Object. is() method determines whether two values are the same value. For example, the usage with different types of values would be,

    var object = Object.create(null);
    70

    Two values are the same if one of the following holds

    1. both undefined
    2. both null
    3. both true or both false
    4. both strings of the same length with the same characters in the same order
    5. both the same object (means both object have same reference)
    6. both numbers and both +0 both -0 both NaN both non-zero and both not NaN and both have the same value

  191. What is the purpose of using object is method

    Some of the applications of Object's

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    17 method are follows,

    1. It is used for comparison of two strings
    2. Ini digunakan untuk perbandingan dua angka
    3. Ini digunakan untuk membandingkan polaritas dua angka
    4. It is used for comparison of two objects

  192. How do you copy properties from one object to other

    You can use the Object. assign() method which is used to copy the values and properties from one or more source objects to a target object. It returns the target object which has properties and values copied from the source objects. The syntax would be as below,

    var object = Object.create(null);
    71

    Let's take example with one source and one target object,

    var object = Object.create(null);
    72

    As observed in the above code, there is a common property(

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    18) from source to target so it's value has been overwritten

  193. What are the applications of assign method

    Below are the some of main applications of Object. assign() method,

    1. It is used for cloning an object
    2. It is used to merge objects with the same properties

  194. What is a proxy object

    The Proxy object is used to define custom behavior for fundamental operations such as property lookup, assignment, enumeration, function invocation, etc. The syntax would be as follows,

    var object = Object.create(null);
    73

    Mari kita ambil contoh objek proxy,

    var object = Object.create(null);
    74

    In the above code, it uses

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    19 handler which define the behavior of the proxy when an operation is performed on it

  195. What is the purpose of seal method

    The Object. seal() method is used to seal an object, by preventing new properties from being added to it and marking all existing properties as non-configurable. But values of present properties can still be changed as long as they are writable. Let's see the below example to understand more about seal() method

    var object = Object.create(null);
    75

  196. What are the applications of seal method

    Below are the main applications of Object. seal() method,

    1. It is used for sealing objects and arrays
    2. It is used to make an object immutable

  197. What are the differences between freeze and seal methods

    If an object is frozen using the Object. freeze() method then its properties become immutable and no changes can be made in them whereas if an object is sealed using the Object. seal() method then the changes can be made in the existing properties of the object

  198. How do you determine if an object is sealed or not

    The Object. isSealed() method is used to determine if an object is sealed or not. An object is sealed if all of the below conditions hold true

    1. If it is not extensible
    2. If all of its properties are non-configurable
    3. If it is not removable (but not necessarily non-writable). Let's see it in the action

    var object = Object.create(null);
    76

  199. How do you get enumerable key and value pairs

    The Object. entries() method is used to return an array of a given object's own enumerable string-keyed property [key, value] pairs, in the same order as that provided by a for. in loop. Let's see the functionality of object. entries() method in an example,

    var object = Object.create(null);
    77

    Note. The order is not guaranteed as object defined

  200. What is the main difference between Object. values and Object. entries method

    The Object. values() method's behavior is similar to Object. entries() method but it returns an array of values instead [key,value] pairs

    var object = Object.create(null);
    78

  201. How can you get the list of keys of any object

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    20 method which is used to return an array of a given object's own property names, in the same order as we get with a normal loop. For example, you can get the keys of a user object,

    var object = Object.create(null);
    79

  202. How do you create an object with prototype

    The Object. create() method is used to create a new object with the specified prototype object and properties. i. e, It uses an existing object as the prototype of the newly created object. It returns a new object with the specified prototype object and properties

    var object = Object.create(null);
    80

  203. What is a WeakSet

    WeakSet is used to store a collection of weakly(weak references) held objects. The syntax would be as follows,

    var object = Object.create(null);
    81

    Let's see the below example to explain it's behavior,

    var object = Object.create(null);
    _82

  204. What are the differences between WeakSet and Set

    The main difference is that references to objects in Set are strong while references to objects in WeakSet are weak. i. e, An object in WeakSet can be garbage collected if there is no other reference to it. Other differences are,

    1. Sets can store any value Whereas WeakSets can store only collections of objects
    2. WeakSet does not have size property unlike Set
    3. WeakSet does not have methods such as clear, keys, values, entries, forEach
    4. WeakSet is not iterable

  205. List down the collection of methods available on WeakSet

    Below are the list of methods available on WeakSet,

    1. add(value). A new object is appended with the given value to the weakset
    2. delete(value). Deletes the value from the WeakSet collection
    3. has(value). It returns true if the value is present in the WeakSet Collection, otherwise it returns false

    Let's see the functionality of all the above methods in an example,

    var object = Object.create(null);
    83

  206. What is a WeakMap

    The WeakMap object is a collection of key/value pairs in which the keys are weakly referenced. In this case, keys must be objects and the values can be arbitrary values. The syntax is looking like as below,

    var object = Object.create(null);
    84

    Let's see the below example to explain it's behavior,

    var object = Object.create(null);
    85

  207. What are the differences between WeakMap and Map

    The main difference is that references to key objects in Map are strong while references to key objects in WeakMap are weak. i. e, A key object in WeakMap can be garbage collected if there is no other reference to it. Other differences are,

    1. Maps can store any key type Whereas WeakMaps can store only collections of key objects
    2. WeakMap does not have size property unlike Map
    3. WeakMap does not have methods such as clear, keys, values, entries, forEach
    4. WeakMap is not iterable

  208. Buat daftar kumpulan metode yang tersedia di WeakMap

    Below are the list of methods available on WeakMap,

    1. set(key, value). Sets the value for the key in the WeakMap object. Returns the WeakMap object
    2. delete(key). Menghapus nilai apa pun yang terkait dengan kunci
    3. memiliki (kunci). Mengembalikan pernyataan Boolean apakah suatu nilai telah dikaitkan dengan kunci di objek WeakMap atau tidak
    4. dapatkan (kunci). Mengembalikan nilai yang terkait dengan kunci, atau tidak terdefinisi jika tidak ada. Mari kita lihat fungsionalitas dari semua metode di atas dalam sebuah contoh,

    var object = Object.create(null);
    _86

  209. Apa tujuan dari ketidaksetaraan

    uneval() adalah fungsi bawaan yang digunakan untuk membuat representasi string dari kode sumber suatu Objek. Ini adalah fungsi tingkat atas dan tidak terkait dengan objek apa pun. Mari kita lihat contoh di bawah ini untuk mengetahui lebih banyak tentang fungsinya,

    var object = Object.create(null);
    _87

  210. Bagaimana Anda menyandikan URL

    Fungsi encodeURI() digunakan untuk menyandikan URI lengkap yang memiliki karakter khusus kecuali (, / ?. @ & = + $ #) karakter

    var object = Object.create(null);
    _88

  211. Bagaimana Anda memecahkan kode URL

    The decodeURI() function is used to decode a Uniform Resource Identifier (URI) previously created by encodeURI()

    var object = Object.create(null);
    89

  212. How do you print the contents of web page

    The window object provided a print() method which is used to print the contents of the current window. It opens a Print dialog box which lets you choose between various printing options. Let's see the usage of print method in an example,

    var object = Object.create(null);
    90

    Note. In most browsers, it will block while the print dialog is open

  213. What is the difference between uneval and eval

    The

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    21 function returns the source of a given object; whereas the
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    22 function does the opposite, by evaluating that source code in a different memory area. Let's see an example to clarify the difference,

    var object = Object.create(null);
    91

  214. What is an anonymous function

    An anonymous function is a function without a name. Anonymous functions are commonly assigned to a variable name or used as a callback function. The syntax would be as below,

    var object = Object.create(null);
    92

    Let's see the above anonymous function in an example,

    var object = Object.create(null);
    93

  215. What is the precedence order between local and global variables

    A local variable takes precedence over a global variable with the same name. Let's see this behavior in an example

    var object = Object.create(null);
    _94

  216. What are javascript accessors

    ECMAScript 5 introduced javascript object accessors or computed properties through getters and setters. Getters uses the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    19 keyword whereas Setters uses the
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    24 keyword

    var object = Object.create(null);
    95

  217. How do you define property on Object constructor

    The Object. defineProperty() static method is used to define a new property directly on an object, or modify an existing property on an object, and returns the object. Let's see an example to know how to define property,

    var object = Object.create(null);
    96

  218. What is the difference between get and defineProperty

    Both have similar results until unless you use classes. If you use

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    19 the property will be defined on the prototype of the object whereas using
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    26 the property will be defined on the instance it is applied to

  219. What are the advantages of Getters and Setters

    Below are the list of benefits of Getters and Setters,

    1. They provide simpler syntax
    2. They are used for defining computed properties, or accessors in JS
    3. Useful to provide equivalence relation between properties and methods
    4. They can provide better data quality
    5. Useful for doing things behind the scenes with the encapsulated logic

  220. Can I add getters and setters using defineProperty method

    Yes, You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    26 method to add Getters and Setters. For example, the below counter object uses increment, decrement, add and subtract properties,

    var object = Object.create(null);
    97

  221. What is the purpose of switch-case

    The switch case statement in JavaScript is used for decision making purposes. In a few cases, using the switch case statement is going to be more convenient than if-else statements. The syntax would be as below,

    var object = Object.create(null);
    98

    The above multi-way branch statement provides an easy way to dispatch execution to different parts of code based on the value of the expression

  222. What are the conventions to be followed for the usage of switch case

    Below are the list of conventions should be taken care,

    1. The expression can be of type either number or string
    2. Duplicate values are not allowed for the expression
    3. The default statement is optional. If the expression passed to switch does not match with any case value then the statement within default case will be executed
    4. The break statement is used inside the switch to terminate a statement sequence
    5. The break statement is optional. But if it is omitted, the execution will continue on into the next case

  223. What are primitive data types

    A primitive data type is data that has a primitive value (which has no properties or methods). There are 7 types of primitive data types

    1. string
    2. number
    3. boolean
    4. null
    5. undefined
    6. bigint
    7. symbol

  224. What are the different ways to access object properties

    There are 3 possible ways for accessing the property of an object

    1. Dot notation. It uses dot for accessing the properties

    var object = Object.create(null);
    99

    1. Square brackets notation. It uses square brackets for property access

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    00

    1. Expression notation. Ini menggunakan ekspresi dalam tanda kurung siku

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    01

  225. What are the function parameter rules

    JavaScript functions follow below rules for parameters,

    1. The function definitions do not specify data types for parameters
    2. Jangan melakukan pengecekan tipe pada argumen yang diteruskan
    3. Do not check the number of arguments received. i. e, The below function follows the above rules,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    02

  226. What is an error object

    Objek kesalahan adalah objek kesalahan bawaan yang menyediakan informasi kesalahan saat terjadi kesalahan. It has two properties. name and message. For example, the below function logs error details,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    03

  227. When you get a syntax error

    A SyntaxError is thrown if you try to evaluate code with a syntax error. For example, the below missing quote for the function parameter throws a syntax error

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    04

  228. What are the different error names from error object

    There are 6 different types of error names returned from error object,

    Error NameDescriptionEvalErrorAn error has occurred in the eval() functionRangeErrorAn error has occurred with a number "out of range"ReferenceErrorAn error due to an illegal referenceSyntaxErrorAn error due to a syntax errorTypeErrorAn error due to a type errorURIErrorAn error due to encodeURI()

  229. What are the various statements in error handling

    Below are the list of statements used in an error handling,

    1. try. This statement is used to test a block of code for errors
    2. catch. This statement is used to handle the error
    3. throw. This statement is used to create custom errors
    4. finally. This statement is used to execute code after try and catch regardless of the result

  230. What are the two types of loops in javascript

    1. Entry Controlled loops. In this kind of loop type, the test condition is tested before entering the loop body. For example, For Loop and While Loop comes under this category
    2. Exit Controlled Loops. In this kind of loop type, the test condition is tested or evaluated at the end of the loop body. i. e, the loop body will execute at least once irrespective of test condition true or false. For example, do-while loop comes under this category

  231. What is nodejs

    Node. js is a server-side platform built on Chrome's JavaScript runtime for easily building fast and scalable network applications. It is an event-based, non-blocking, asynchronous I/O runtime that uses Google's V8 JavaScript engine and libuv library

  232. What is an Intl object

    The Intl object is the namespace for the ECMAScript Internationalization API, which provides language sensitive string comparison, number formatting, and date and time formatting. It provides access to several constructors and language sensitive functions

  233. How do you perform language specific date and time formatting

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    28 object which is a constructor for objects that enable language-sensitive date and time formatting. Let's see this behavior with an example,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    05

  234. What is an Iterator

    An iterator is an object which defines a sequence and a return value upon its termination. It implements the Iterator protocol with a

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    29 method which returns an object with two properties.
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    30 (the next value in the sequence) and
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    31 (which is true if the last value in the sequence has been consumed)

  235. How does synchronous iteration works

    Synchronous iteration was introduced in ES6 and it works with below set of components,

    Iterable. It is an object which can be iterated over via a method whose key is Symbol. iterator. Iterator. It is an object returned by invoking

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    32 on an iterable. This iterator object wraps each iterated element in an object and returns it via
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    29 method one by one. IteratorResult. It is an object returned by
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    29 method. The object contains two properties; the
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    30 property contains an iterated element and the
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    31 property determines whether the element is the last element or not

    Let's demonstrate synchronous iteration with an array as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    06

  236. What is an event loop

    The Event Loop is a queue of callback functions. When an async function executes, the callback function is pushed into the queue. The JavaScript engine doesn't start processing the event loop until the async function has finished executing the code. Note. It allows Node. js to perform non-blocking I/O operations even though JavaScript is single-threaded

  237. What is call stack

    Call Stack is a data structure for javascript interpreters to keep track of function calls(creates execution context) in the program. It has two major actions,

    1. Whenever you call a function for its execution, you are pushing it to the stack
    2. Whenever the execution is completed, the function is popped out of the stack

    Let's take an example and it's state representation in a diagram format

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    07

    The above code processed in a call stack as below,

    1. Add the
      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      37 function to the call stack list and execute the code
    2. Add the
      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      38 function to the call stack list and execute the code
    3. Delete the
      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      38 function from our call stack list
    4. Delete the
      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      37 function from the call stack list since there are no items anymore

    Soal coding javascript untuk latihan

  238. What is an event queue

    The event queue follows the queue data structure. It stores async callbacks to be added to the call stack. It is also known as the Callback Queue or Macrotask Queue

    Whenever the call stack receives an async function, it is moved into the Web API. Based on the function, Web API executes it and awaits the result. Once it is finished, it moves the callback into the event queue (the callback of the promise is moved into the microtask queue)

    The event queue constantly checks whether or not the call stack is empty. Once the call stack is empty and there is a callback in the event queue, the event queue moves the callback into the call stack. If there is a callback in the microtask queue as well, it is moved first. The microtask queue has a higher priority than the event queue

  239. What is a decorator

    A decorator is an expression that evaluates to a function and that takes the target, name, and decorator descriptor as arguments. Also, it optionally returns a decorator descriptor to install on the target object. Let's define admin decorator for user class at design time,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    08

  240. What are the properties of Intl object

    Below are the list of properties available on Intl object,

    1. Collator. These are the objects that enable language-sensitive string comparison
    2. DateTimeFormat. These are the objects that enable language-sensitive date and time formatting
    3. ListFormat. These are the objects that enable language-sensitive list formatting
    4. NumberFormat. Objects that enable language-sensitive number formatting
    5. PluralRules. Objects that enable plural-sensitive formatting and language-specific rules for plurals
    6. Format Waktu Relatif. Objects that enable language-sensitive relative time formatting

  241. What is an Unary operator

    The unary(+) operator is used to convert a variable to a number. If the variable cannot be converted, it will still become a number but with the value NaN. Mari kita lihat perilaku ini dalam sebuah tindakan

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    09

  242. How do you sort elements in an array

    Metode sort() digunakan untuk mengurutkan elemen-elemen array di tempat dan mengembalikan array yang diurutkan. The example usage would be as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    10

  243. What is the purpose of compareFunction while sorting arrays

    The compareFunction is used to define the sort order. If omitted, the array elements are converted to strings, then sorted according to each character's Unicode code point value. Let's take an example to see the usage of compareFunction,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    11

  244. How do you reversing an array

    You can use the reverse() method to reverse the elements in an array. This method is useful to sort an array in descending order. Let's see the usage of reverse() method in an example,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    12

  245. How do you find min and max value in an array

    You can use

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    41 and
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    42 methods on array variables to find the minimum and maximum elements within an array. Let's create two functions to find the min and max value with in an array,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    13

  246. How do you find min and max values without Math functions

    You can write functions which loop through an array comparing each value with the lowest value or highest value to find the min and max values. Let's create those functions to find min and max values,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    14

  247. What is an empty statement and purpose of it

    The empty statement is a semicolon (;) indicating that no statement will be executed, even if JavaScript syntax requires one. Since there is no action with an empty statement you might think that it's usage is quite less, but the empty statement is occasionally useful when you want to create a loop that has an empty body. For example, you can initialize an array with zero values as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    15

  248. How do you get metadata of a module

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    43 object which is a meta-property exposing context-specific meta data to a JavaScript module. It contains information about the current module, such as the module's URL. In browsers, you might get different meta data than NodeJS

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    16

  249. What is a comma operator

    The comma operator is used to evaluate each of its operands from left to right and returns the value of the last operand. This is totally different from comma usage within arrays, objects, and function arguments and parameters. For example, the usage for numeric expressions would be as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    17

  250. What is the advantage of a comma operator

    It is normally used to include multiple expressions in a location that requires a single expression. One of the common usages of this comma operator is to supply multiple parameters in a

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    44 loop. For example, the below for loop uses multiple expressions in a single location using comma operator,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    18

    You can also use the comma operator in a return statement where it processes before returning

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    19

  251. What is typescript

    TypeScript is a typed superset of JavaScript created by Microsoft that adds optional types, classes, async/await, and many other features, and compiles to plain JavaScript. Angular built entirely in TypeScript and used as a primary language. You can install it globally as

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    20

    Let's see a simple example of TypeScript usage,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    21

    The greeting method allows only string type as argument

  252. What are the differences between javascript and typescript

    Below are the list of differences between javascript and typescript,

    featuretypescriptjavascriptLanguage paradigmObject oriented programming languageScripting languageTyping supportSupports static typingIt has dynamic typingModulesSupportedNot supportedInterfaceIt has interfaces conceptDoesn't support interfacesOptional parametersFunctions support optional parametersNo support of optional parameters for functions

  253. What are the advantages of typescript over javascript

    Below are some of the advantages of typescript over javascript,

    1. TypeScript is able to find compile time errors at the development time only and it makes sures less runtime errors. Whereas javascript is an interpreted language
    2. TypeScript is strongly-typed or supports static typing which allows for checking type correctness at compile time. This is not available in javascript
    3. TypeScript compiler can compile the . ts files into ES3,ES4 and ES5 unlike ES6 features of javascript which may not be supported in some browsers

  254. What is an object initializer

    An object initializer is an expression that describes the initialization of an Object. The syntax for this expression is represented as a comma-delimited list of zero or more pairs of property names and associated values of an object, enclosed in curly braces ({}). This is also known as literal notation. It is one of the ways to create an object

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    22

  255. What is a constructor method

    The constructor method is a special method for creating and initializing an object created within a class. If you do not specify a constructor method, a default constructor is used. The example usage of constructor would be as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    23

  256. What happens if you write constructor more than once in a class

    The "constructor" in a class is a special method and it should be defined only once in a class. i. e, If you write a constructor method more than once in a class it will throw a

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    45 error

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    24

  257. How do you call the constructor of a parent class

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    46 keyword to call the constructor of a parent class. Remember that
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    47 must be called before using 'this' reference. Otherwise it will cause a reference error. Let's the usage of it,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    25

  258. How do you get the prototype of an object

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    48 method to return the prototype of the specified object. i. e. The value of the internal
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    11 property. If there are no inherited properties then
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    50 value is returned

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    26

  259. What happens If I pass string type for getPrototype method

    In ES5, it will throw a TypeError exception if the obj parameter isn't an object. Whereas in ES2015, the parameter will be coerced to an

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    51

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    27

  260. How do you set prototype of one object to another

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    52 method that sets the prototype (i. e. , the internal
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    53 property) of a specified object to another object or null. For example, if you want to set prototype of a square object to rectangle object would be as follows,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    28

  261. How do you check whether an object can be extendable or not

    The

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    54 method is used to determine if an object is extendable or not. i. e, Whether it can have new properties added to it or not

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    29

    Note. By default, all the objects are extendable. i. e, The new properties can be added or modified

  262. How do you prevent an object to extend

    Metode

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    55 digunakan untuk mencegah properti baru ditambahkan ke objek. In other words, it prevents future extensions to the object. Let's see the usage of this property,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    30

  263. What are the different ways to make an object non-extensible

    You can mark an object non-extensible in 3 ways,

    1. Object. preventExtensions
    2. Obyek. seal
    3. Obyek. freeze

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    31

  264. How do you define multiple properties on an object

    The

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    56 method is used to define new or modify existing properties directly on an object and returning the object. Let's define multiple properties on an empty object,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    32

  265. What is MEAN in javascript

    The MEAN (MongoDB, Express, AngularJS, and Node. js) stack is the most popular open-source JavaScript software tech stack available for building dynamic web apps where you can write both the server-side and client-side halves of the web project entirely in JavaScript

  266. What Is Obfuscation in javascript

    Obfuscation is the deliberate act of creating obfuscated javascript code(i. e, source or machine code) that is difficult for humans to understand. It is something similar to encryption, but a machine can understand the code and execute it. Let's see the below function before Obfuscation,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    33

    And after the code Obfuscation, it would be appeared as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    34

  267. Why do you need Obfuscation

    Below are the few reasons for Obfuscation,

    1. The Code size will be reduced. So data transfers between server and client will be fast
    2. It hides the business logic from outside world and protects the code from others
    3. Reverse engineering is highly difficult
    4. The download time will be reduced

  268. What is Minification

    Minification is the process of removing all unnecessary characters(empty spaces are removed) and variables will be renamed without changing it's functionality. It is also a type of obfuscation

  269. What are the advantages of minification

    Normally it is recommended to use minification for heavy traffic and intensive requirements of resources. It reduces file sizes with below benefits,

    1. Decreases loading times of a web page
    2. Saves bandwidth usages

  270. What are the differences between Obfuscation and Encryption

    Below are the main differences between Obfuscation and Encryption,

    FeatureObfuscationEncryptionDefinitionChanging the form of any data in any other formChanging the form of information to an unreadable format by using a keyA key to decodeIt can be decoded without any keyIt is requiredTarget data formatIt will be converted to a complex formConverted into an unreadable format

  271. What are the common tools used for minification

    There are many online/offline tools to minify the javascript files,

    1. Google's Closure Compiler
    2. UglifyJS2
    3. jsmin
    4. javascript-minifier. com/
    5. prettydiff. com

  272. How do you perform form validation using javascript

    JavaScript can be used to perform HTML form validation. For example, if the form field is empty, the function needs to notify, and return false, to prevent the form being submitted. Lets' perform user login in an html form,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    35

    And the validation on user login is below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    36

  273. How do you perform form validation without javascript

    You can perform HTML form validation automatically without using javascript. The validation enabled by applying the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    57 attribute to prevent form submission when the input is empty

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    37

    Note. Automatic form validation does not work in Internet Explorer 9 or earlier

  274. What are the DOM methods available for constraint validation

    The below DOM methods are available for constraint validation on an invalid input,

    1. checkValidity(). It returns true if an input element contains valid data
    2. setCustomValidity(). It is used to set the validationMessage property of an input element. Let's take an user login form with DOM validations

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    38

  275. What are the available constraint validation DOM properties

    Below are the list of some of the constraint validation DOM properties available,

    1. validity. It provides a list of boolean properties related to the validity of an input element
    2. validationMessage. It displays the message when the validity is false
    3. willValidate. It indicates if an input element will be validated or not

  276. What are the list of validity properties

    The validity property of an input element provides a set of properties related to the validity of data

    1. customError. It returns true, if a custom validity message is set
    2. patternMismatch. It returns true, if an element's value does not match its pattern attribute
    3. rangeOverflow. It returns true, if an element's value is greater than its max attribute
    4. rangeUnderflow. It returns true, if an element's value is less than its min attribute
    5. stepMismatch. It returns true, if an element's value is invalid according to step attribute
    6. tooLong. It returns true, if an element's value exceeds its maxLength attribute
    7. typeMismatch. It returns true, if an element's value is invalid according to type attribute
    8. valueMissing. It returns true, if an element with a required attribute has no value
    9. valid. It returns true, if an element's value is valid

  277. Give an example usage of rangeOverflow property

    If an element's value is greater than its max attribute then rangeOverflow property returns true. For example, the below form submission throws an error if the value is more than 100,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    39

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    40

  278. Is enums feature available in javascript

    No, javascript does not natively support enums. But there are different kinds of solutions to simulate them even though they may not provide exact equivalents. For example, you can use freeze or seal on object,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _41

  279. Apa itu enum

    An enum is a type restricting variables to one value from a predefined set of constants. JavaScript has no enums but typescript provides built-in enum support

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    42

  280. How do you list all properties of an object

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    58 method which returns an array of all properties found directly in a given object. Let's the usage of it in an example,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    43

  281. How do you get property descriptors of an object

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    59 method which returns all own property descriptors of a given object. The example usage of this method is below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    44

  282. What are the attributes provided by a property descriptor

    A property descriptor is a record which has the following attributes

    1. nilai. The value associated with the property
    2. writable. Determines whether the value associated with the property can be changed or not
    3. configurable. Returns true if the type of this property descriptor can be changed and if the property can be deleted from the corresponding object
    4. enumerable. Determines whether the property appears during enumeration of the properties on the corresponding object or not
    5. set. A function which serves as a setter for the property
    6. get. A function which serves as a getter for the property

  283. How do you extend classes

    The

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    60 keyword is used in class declarations/expressions to create a class which is a child of another class. It can be used to subclass custom classes as well as built-in objects. The syntax would be as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    45

    Let's take an example of Square subclass from Polygon parent class,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    25

  284. How do I modify the url without reloading the page

    The

    function func() {};
    
    new func(x, y, z);
    90 property will be helpful to modify the url but it reloads the page. HTML5 introduced the
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    62 and
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    63 methods, which allow you to add and modify history entries, respectively. For example, you can use pushState as below,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    47

  285. How do you check whether an array includes a particular value or not

    The

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    64 method is used to determine whether an array includes a particular value among its entries by returning either true or false. Let's see an example to find an element(numeric and string) within an array

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    48

  286. How do you compare scalar arrays

    You can use length and every method of arrays to compare two scalar(compared directly using ===) arrays. The combination of these expressions can give the expected result,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    49

    If you would like to compare arrays irrespective of order then you should sort them before,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    50

  287. How to get the value from get parameters

    The

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    65 object accepts the url string and
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    66 property of this object can be used to access the get parameters. Remember that you may need to use polyfill or
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    67 to access the URL in older browsers(including IE)

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    51

  288. How do you print numbers with commas as thousand separators

    You can use the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    68 method which returns a string with a language-sensitive representation such as thousand separator,currency etc of this number

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    52

  289. What is the difference between java and javascript

    Both are totally unrelated programming languages and no relation between them. Java is statically typed, compiled, runs on its own VM. Whereas Javascript is dynamically typed, interpreted, and runs in a browser and nodejs environments. Let's see the major differences in a tabular format,

    FeatureJavaJavaScriptTypedIt's a strongly typed languageIt's a dynamic typed languageParadigmObject oriented programmingPrototype based programmingScopingBlock scopedFunction-scopedConcurrencyThread basedevent basedMemoryUses more memoryUses less memory. Hence it will be used for web pages

  290. Does JavaScript supports namespace

    JavaScript doesn’t support namespace by default. So if you create any element(function, method, object, variable) then it becomes global and pollutes the global namespace. Let's take an example of defining two functions without any namespace,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    53

    It always calls the second function definition. Dalam hal ini, namespace akan menyelesaikan masalah tabrakan nama

  291. Bagaimana Anda mendeklarasikan namespace

    Meskipun JavaScript tidak memiliki ruang nama, kita dapat menggunakan Objects , IIFE untuk membuat ruang nama

    1. Menggunakan Object Literal Notation. Mari bungkus variabel dan fungsi di dalam Object literal yang bertindak sebagai namespace. Setelah itu Anda dapat mengaksesnya menggunakan notasi objek

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _54

    1. Menggunakan IIFE (Ekspresi fungsi yang segera dipanggil). Pasangan terluar dari tanda kurung IIFE membuat cakupan lokal untuk semua kode di dalamnya dan menjadikan fungsi anonim sebagai ekspresi fungsi. Karena itu, Anda dapat membuat fungsi yang sama dalam dua ekspresi fungsi yang berbeda untuk bertindak sebagai namespace

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    55

    1. Using a block and a let/const declaration. Di ECMAScript 6, Anda cukup menggunakan blok dan deklarasi let untuk membatasi ruang lingkup variabel ke blok

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _56

  292. Bagaimana Anda memanggil kode javascript dalam iframe dari halaman induk

    Awalnya iFrame harus diakses menggunakan

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    69 atau
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    70. Setelah itu
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _71 properti iFrame memberikan akses untuk targetFunction

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _57

  293. Bagaimana cara mendapatkan offset zona waktu dari tanggal

    Anda dapat menggunakan metode

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _72 dari objek tanggal. Metode ini mengembalikan perbedaan zona waktu, dalam hitungan menit, dari lokal saat ini (pengaturan sistem host) ke UTC

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _58

  294. Bagaimana Anda memuat file CSS dan JS secara dinamis

    Anda dapat membuat elemen tautan dan skrip di DOM dan menambahkannya sebagai tag anak ke kepala. Mari buat fungsi untuk menambahkan skrip dan resource gaya seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _59

  295. What are the different methods to find HTML elements in DOM

    Jika Anda ingin mengakses elemen apa pun di halaman HTML, Anda harus mulai dengan mengakses objek dokumen. Nanti Anda dapat menggunakan salah satu metode di bawah ini untuk menemukan elemen HTML,

    1. dokumen. getElementById(id). Ia menemukan elemen dengan Id
    2. dokumen. getElementsByTagName(nama). Ia menemukan elemen dengan nama tag
    3. dokumen. getElementsByClassName(nama). Ia menemukan elemen dengan nama kelas

  296. Apa itu jQuery

    jQuery adalah pustaka JavaScript lintas-browser populer yang menyediakan penjelajahan Document Object Model (DOM), penanganan peristiwa, animasi, dan interaksi AJAX dengan meminimalkan perbedaan di seluruh browser. Ini terkenal secara luas dengan filosofi "Tulis lebih sedikit, lakukan lebih banyak". Misalnya, Anda dapat menampilkan pesan selamat datang pada pemuatan halaman menggunakan jQuery seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    60

    Catatan. Anda dapat mengunduhnya dari situs resmi jquery atau menginstalnya dari CDN, seperti google

  297. Apa itu mesin JavaScript V8

    V8 adalah mesin JavaScript berkinerja tinggi open source yang digunakan oleh browser Google Chrome, ditulis dalam C++. Ini juga digunakan di node. proyek js. Ini mengimplementasikan ECMAScript dan WebAssembly, dan berjalan di Windows 7 atau lebih baru, macOS 10. 12+, dan sistem Linux yang menggunakan prosesor x64, IA-32, ARM, atau MIPS. Catatan. Itu dapat berjalan mandiri, atau dapat disematkan ke dalam aplikasi C ++ apa pun

  298. Mengapa kami menyebut javascript sebagai bahasa dinamis

    JavaScript adalah bahasa yang diketik secara longgar atau dinamis karena variabel dalam JavaScript tidak secara langsung dikaitkan dengan jenis nilai tertentu, dan variabel apa pun dapat ditetapkan/dipindahkan dengan nilai dari semua jenis

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _61

  299. Apa itu operator batal

    Operator

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    73 mengevaluasi ekspresi yang diberikan dan kemudian mengembalikan undefined(i. e, tanpa mengembalikan nilai). Sintaksnya akan seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _62

    Let's display a message without any redirection or reload

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _63

    Catatan. Operator ini sering digunakan untuk mendapatkan nilai primitif yang tidak terdefinisi, menggunakan "void(0)"

  300. Cara mengatur kursor untuk menunggu

    Kursor dapat diatur untuk menunggu di JavaScript dengan menggunakan properti "cursor". Mari kita lakukan perilaku ini saat memuat halaman menggunakan fungsi di bawah ini

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _64

    dan fungsi ini dipanggil saat memuat halaman

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _65

  301. Bagaimana Anda membuat loop tak terbatas

    Anda dapat membuat loop tak terbatas menggunakan for dan while loop tanpa menggunakan ekspresi apa pun. Konstruksi for loop atau sintaks adalah pendekatan yang lebih baik dalam hal ESLint dan alat pengoptimal kode,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _66

  302. Mengapa Anda perlu menghindari dengan pernyataan

    JavaScript dengan pernyataan dimaksudkan untuk memberikan singkatan untuk menulis akses berulang ke objek. Sehingga dapat membantu mengurangi ukuran file dengan mengurangi kebutuhan untuk mengulang referensi objek yang panjang tanpa penalti kinerja. Mari kita ambil contoh yang digunakan untuk menghindari redundansi saat mengakses objek beberapa kali

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _67

    Menggunakan

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _74 ternyata ini menjadi

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _68

    Tapi pernyataan

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _74 ini menciptakan masalah kinerja karena seseorang tidak dapat memprediksi apakah suatu argumen akan merujuk ke variabel nyata atau ke properti di dalam argumen with

  303. Apa output dari loop di bawah ini

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _69

    Output dari for loop di atas adalah 4 4 4 4 dan 0 1 2 3

    Penjelasan. Due to the event queue/loop of javascript, the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    76 callback function is called after the loop has been executed. Karena variabel i dideklarasikan dengan kata kunci
    function func() {};
    
    new func(x, y, z);
    _53 itu menjadi variabel global dan nilainya sama dengan 4 menggunakan iterasi ketika fungsi
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    76 dipanggil. Oleh karena itu, output dari loop pertama adalah ________6______79

    Sedangkan pada loop kedua, variabel i dideklarasikan sebagai kata kunci

    function func() {};
    
    new func(x, y, z);
    52 itu menjadi variabel lingkup blok dan memegang nilai baru (0, 1 ,2 3) untuk setiap iterasi. Oleh karena itu, output dari loop pertama adalah ________6______81

  304. Sebutkan beberapa fitur ES6

    Di bawah ini adalah daftar beberapa fitur baru ES6,

    1. Dukungan untuk konstanta atau variabel yang tidak dapat diubah
    2. Dukungan lingkup blok untuk variabel, konstanta, dan fungsi
    3. Fungsi panah
    4. Parameter bawaan
    5. Parameter Istirahat dan Penyebaran
    6. Templat Literal
    7. String multi-baris
    8. Tugas Penghancuran
    9. Literal Objek yang Disempurnakan
    10. Janji
    11. Kelas
    12. Modules

  305. What is ES6

    ES6 adalah edisi keenam dari bahasa javascript dan dirilis pada Juni 2015. Awalnya dikenal sebagai ECMAScript 6 (ES6) dan kemudian berganti nama menjadi ECMAScript 2015. Hampir semua browser modern mendukung ES6 tetapi untuk browser lama ada banyak transpiler, seperti Babel. js dll

  306. Bisakah saya mendeklarasikan ulang variabel let dan const

    Tidak, Anda tidak dapat mendeklarasikan ulang variabel let dan const. Jika Anda melakukannya, itu melempar kesalahan di bawah ini

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    70

    Penjelasan. Deklarasi variabel dengan kata kunci

    function func() {};
    
    new func(x, y, z);
    53 mengacu pada ruang lingkup fungsi dan variabel diperlakukan seolah-olah dideklarasikan di bagian atas ruang lingkup terlampir karena fitur pengangkat. Jadi semua beberapa deklarasi berkontribusi pada variabel yang diangkat yang sama tanpa ada kesalahan. Mari kita ambil contoh mendeklarasikan ulang variabel dalam lingkup yang sama untuk variabel var dan let/const

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _71

    Deklarasi multi-blok melempar kesalahan sintaksis,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    72

  307. Apakah variabel const membuat nilainya tidak berubah

    Tidak, variabel const tidak membuat nilainya tidak berubah. But it disallows subsequent assignments(i. e, Anda dapat mendeklarasikan dengan penugasan tetapi tidak dapat menetapkan nilai lain nanti)

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    73

  308. Apa itu parameter default

    Di E5, kita perlu bergantung pada operator logika OR untuk menangani nilai default parameter fungsi. Sedangkan di ES6, fitur parameter fungsi Default memungkinkan parameter diinisialisasi dengan nilai default jika tidak ada nilai atau undefined yang diteruskan. Mari kita bandingkan perilaku dengan contoh,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _74

    Parameter default membuat inisialisasi lebih sederhana,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    75

  309. Apa itu template literal

    Templat literal atau string templat adalah literal string yang memungkinkan ekspresi tersemat. Ini diapit oleh karakter back-tick (`) alih-alih tanda kutip ganda atau tunggal. Di E6, fitur ini memungkinkan penggunaan ekspresi dinamis seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    76

    Di ES5, Anda perlu break string seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    77

    Catatan. Anda dapat menggunakan string multi-baris dan fitur interpolasi string dengan literal template

  310. How do you write multi-line strings in template literals

    Di ES5, Anda harus menggunakan karakter pelarian baris baru ('\n') dan simbol gabungan (+) untuk mendapatkan string multi-baris

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    78

    Sedangkan di ES6, Anda tidak perlu menyebutkan karakter urutan baris baru apa pun,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _79

  311. Apa itu template bersarang

    Template bersarang adalah fitur yang didukung dalam sintaks literal template untuk memungkinkan backtick dalam di dalam placeholder ${ } di dalam template. Misalnya, templat bersarang di bawah ini digunakan untuk menampilkan ikon berdasarkan izin pengguna sedangkan templat luar memeriksa jenis platform,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _80

    Anda dapat menulis kasus penggunaan di atas tanpa fitur template bersarang juga. Namun, fitur template bersarang lebih ringkas dan mudah dibaca

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _81

  312. Apa itu template yang diberi tag

    Templat yang diberi tag adalah bentuk lanjutan dari templat di mana tag memungkinkan Anda mengurai literal templat dengan sebuah fungsi. Fungsi tag menerima parameter pertama sebagai array string dan parameter yang tersisa sebagai ekspresi. Fungsi ini juga dapat mengembalikan string yang dimanipulasi berdasarkan parameter. Mari kita lihat penggunaan perilaku templat yang diberi tag ini dari rangkaian keterampilan profesional TI dalam suatu organisasi,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _82

  313. Apa itu string mentah

    ES6 provides a raw strings feature using the

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    83 method which is used to get the raw string form of template strings. Fitur ini memungkinkan Anda untuk mengakses string mentah saat dimasukkan, tanpa memproses urutan escape. Misalnya, penggunaannya akan seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _83

    Jika Anda tidak menggunakan string mentah, urutan karakter baris baru akan diproses dengan menampilkan keluaran dalam beberapa baris

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _84

    Juga, properti raw tersedia pada argumen pertama ke fungsi tag

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _85

  314. Apa yang merusak tugas

    Tugas penghancuran adalah ekspresi JavaScript yang memungkinkan untuk mengekstrak nilai dari array atau properti dari objek menjadi variabel yang berbeda. Mari dapatkan nilai bulan dari array menggunakan tugas destrukturisasi

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _86

    dan Anda bisa mendapatkan properti pengguna dari suatu objek menggunakan tugas penghancuran,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _87

  315. Apa nilai default dalam tugas penghancuran

    Variabel dapat diberi nilai default ketika nilai yang dibongkar dari larik atau objek tidak ditentukan selama penugasan destrukturisasi. Ini membantu untuk menghindari pengaturan nilai default secara terpisah untuk setiap tugas. Mari kita ambil contoh untuk kasus penggunaan array dan objek,

    Arrays destructuring

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _88

    Penghancuran objek

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _89

  316. Bagaimana Anda menukar variabel dalam tugas penghancuran

    Jika Anda tidak menggunakan tugas penghancuran struktur, menukar dua nilai memerlukan variabel sementara. Sedangkan menggunakan fitur destrukturisasi, dua nilai variabel dapat ditukar dalam satu ekspresi destrukturisasi. Mari menukar dua variabel angka dalam tugas penghancuran array,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _90

  317. Apa itu literal objek yang ditingkatkan

    Literal objek memudahkan pembuatan objek dengan cepat dengan properti di dalam kurung kurawal. Misalnya, ini menyediakan sintaks yang lebih pendek untuk definisi properti objek umum seperti di bawah ini

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _91

  318. Apa itu impor dinamis

    Impor dinamis menggunakan sintaks fungsi

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _84 memungkinkan kita memuat modul sesuai permintaan dengan menggunakan promise atau sintaks async/await. Saat ini fitur ini sedang dalam proposal tahap 4. Keuntungan utama impor dinamis adalah pengurangan ukuran bundel kami, respons ukuran/muatan dari permintaan kami, dan peningkatan keseluruhan dalam pengalaman pengguna. Sintaks impor dinamis akan seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    92

  319. Apa kasus penggunaan untuk impor dinamis

    Di bawah ini adalah beberapa kasus penggunaan impor dinamis dibandingkan impor statis,

    1. Impor modul sesuai permintaan atau kondisional. Misalnya, jika Anda ingin memuat polyfill di browser lawas

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _93

    1. Hitung penentu modul saat runtime. Misalnya, Anda dapat menggunakannya untuk internasionalisasi

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _94

    1. Impor modul dari dalam skrip biasa, bukan modul

  320. Apa itu array yang diketik

    Array yang diketik adalah objek mirip-array dari ECMAScript 6 API untuk menangani data biner. JavaScript menyediakan 8 tipe array yang diketik,

    1. Int8Array. Array bilangan bulat bertanda 8-bit
    2. Int16Array. An array of 16-bit signed integers
    3. Int32Array. An array of 32-bit signed integers
    4. Uint8Array. An array of 8-bit unsigned integers
    5. Uint16Array. An array of 16-bit unsigned integers
    6. Uint32Array. An array of 32-bit unsigned integers
    7. Float32Array. Array angka floating point 32-bit
    8. Float64Array. Array angka floating point 64-bit

    Misalnya, Anda dapat membuat larik bilangan bulat bertanda 8-bit seperti di bawah ini

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _95

  321. Apa keuntungan dari loader modul

    Pemuat modul menyediakan fitur di bawah ini,

    1. Pemuatan dinamis
    2. State isolation
    3. Isolasi namespace global
    4. Kait kompilasi
    5. Virtualisasi bersarang

  322. Apa itu pemeriksaan

    Collation digunakan untuk menyortir satu set string dan mencari dalam satu set string. Itu diparameterisasi oleh lokal dan mengetahui Unicode. Mari kita ambil fitur perbandingan dan penyortiran,

    1. Perbandingan

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _96

    1. Penyortiran

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _97

  323. Untuk apa. pernyataan

    untuk. pernyataan membuat loop iterasi atas objek atau elemen yang dapat diubah seperti String bawaan, Array, objek mirip Array (seperti argumen atau NodeList), TypedArray, Map, Set, dan iterables yang ditentukan pengguna. Penggunaan dasar untuk. pernyataan pada array akan seperti di bawah ini,

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _98

  324. What is the output of below spread operator array

    var object = {
         name: "Sudheer",
         age: 34
    };
    
    Object literal property values can be of any data type, including array, function, and nested object.
    _99

    Output dari array adalah ['J', 'o', 'h', 'n', '', 'R', 'e', ​​'s', 'i', 'g'] Penjelasan. String adalah tipe iterable dan operator spread dalam array memetakan setiap karakter iterable ke satu elemen. Karenanya, setiap karakter string menjadi elemen di dalam Array

  325. Apakah PostMessage aman

    Ya, postMessages dapat dianggap sangat aman selama pemrogram/pengembang berhati-hati dalam memeriksa asal dan sumber pesan yang datang. Tetapi jika Anda mencoba mengirim/menerima pesan tanpa memverifikasi sumbernya akan membuat serangan skrip lintas situs

  326. Apa masalah dengan asal target postmessage sebagai wildcard

    Argumen kedua metode postMessage menentukan asal mana yang diizinkan untuk menerima pesan. Jika Anda menggunakan karakter pengganti “*” sebagai argumen, maka asal mana pun diizinkan untuk menerima pesan tersebut. Dalam hal ini, tidak ada cara bagi jendela pengirim untuk mengetahui apakah jendela target berada di asal target saat mengirim pesan. Jika jendela target telah dinavigasi ke Origin lain, Origin lainnya akan menerima data. Oleh karena itu, ini dapat menyebabkan kerentanan XSS

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _00

  327. Bagaimana Anda menghindari menerima postMessages dari penyerang

    Karena pendengar mendengarkan pesan apa pun, penyerang dapat mengelabui aplikasi dengan mengirimkan pesan dari asal penyerang, yang memberi kesan bahwa penerima menerima pesan dari jendela pengirim yang sebenarnya. You can avoid this issue by validating the origin of the message on the receiver's end using the “message. atribut asal”. Sebagai contoh, mari kita periksa http asal pengirim. // www. beberapa pengirim. com di sisi penerima www. beberapa penerima. com,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _01

  328. Bisakah saya menghindari penggunaan postMessages sepenuhnya

    Anda tidak dapat menghindari penggunaan postMessages sepenuhnya (atau 100%). Meskipun aplikasi Anda tidak menggunakan postMessage mengingat risikonya, banyak skrip pihak ketiga menggunakan postMessage untuk berkomunikasi dengan layanan pihak ketiga. Jadi aplikasi Anda mungkin menggunakan postMessage tanpa sepengetahuan Anda

  329. Apakah postMessages sinkron

    PostMessages sinkron di browser IE8 tetapi tidak sinkron di IE9 dan semua browser modern lainnya (i. e, IE9+, Firefox, Chrome, Safari). Karena perilaku asinkron ini, kami menggunakan mekanisme callback saat postMessage dikembalikan

  330. Paradigma apa itu Javascript

    JavaScript adalah bahasa multi-paradigma, mendukung pemrograman imperatif/prosedural, Pemrograman Berorientasi Objek, dan pemrograman fungsional. JavaScript supports Object-Oriented Programming with prototypical inheritance

  331. Apa perbedaan antara javascript internal dan eksternal

    JavaScript internal. Ini adalah kode sumber di dalam tag skrip. JavaScript eksternal. Kode sumber disimpan dalam file eksternal (disimpan dengan. js) dan dirujuk dengan dalam tag

  332. Apakah JavaScript lebih cepat dari skrip sisi server

    Ya, JavaScript lebih cepat dari skrip sisi server. Karena JavaScript adalah skrip sisi klien, JavaScript tidak memerlukan bantuan server web apa pun untuk komputasi atau kalkulasinya. Jadi JavaScript selalu lebih cepat daripada skrip sisi server mana pun seperti ASP, PHP, dll

  333. Bagaimana Anda mendapatkan status kotak centang

    Anda dapat menerapkan properti

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _85 pada kotak centang yang dipilih di DOM. Jika nilainya
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _86 berarti kotak centang dicentang jika tidak maka tidak dicentang. Misalnya, elemen kotak centang HTML di bawah ini dapat diakses menggunakan javascript seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _02

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _03

  334. Apa tujuan dari operator tilde ganda

    The double tilde operator(~~) is known as double NOT bitwise operator. Operator ini akan menjadi pengganti Matematika yang lebih cepat. lantai()

  335. Bagaimana Anda mengubah karakter menjadi kode ASCII

    Anda dapat menggunakan metode

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _87 untuk mengubah karakter string menjadi angka ASCII. Sebagai contoh, mari cari kode ASCII untuk huruf pertama dari string 'ABC',

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _04

    Sedangkan metode

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _88 mengonversi angka menjadi karakter ASCII yang sama

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _05

  336. Apa itu ArrayBuffer

    Objek ArrayBuffer digunakan untuk merepresentasikan buffer data biner mentah dengan panjang tetap dan generik. Anda dapat membuatnya seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _06

    Untuk memanipulasi ArrayBuffer, kita perlu menggunakan objek "tampilan".

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _07

  337. Apa output dari ekspresi string di bawah ini

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _08

    Output dari ekspresi di atas adalah "W". Penjelasan. The bracket notation with specific index on a string returns the character at a specific location. Oleh karena itu, mengembalikan karakter "W" dari string. Karena ini tidak didukung di IE7 dan versi di bawahnya, Anda mungkin perlu menggunakan. metode charAt() untuk mendapatkan hasil yang diinginkan

  338. Apa tujuan dari objek Error

    Konstruktor Error membuat objek error dan instance objek error dilempar saat error runtime terjadi. Objek Error juga dapat digunakan sebagai objek dasar untuk pengecualian yang ditentukan pengguna. Sintaks objek kesalahan akan seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _09

    Anda dapat membuang pengecualian atau kesalahan yang ditentukan pengguna menggunakan objek Kesalahan dalam percobaan. menangkap blok seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _10

  339. Apa tujuan dari objek EvalError

    Objek EvalError menunjukkan kesalahan terkait fungsi

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    89 global. Meskipun pengecualian ini tidak lagi dilemparkan oleh JavaScript, objek EvalError tetap untuk kompatibilitas. Sintaks ekspresi ini akan seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _11

    Anda dapat melempar EvalError dengan mencoba. menangkap blok seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    12

  340. What are the list of cases error thrown from non-strict mode to strict mode

    Saat Anda menerapkan 'gunakan ketat';

    1. Saat Anda menggunakan sintaks Oktal

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _13

    1. Menggunakan
      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      _74 pernyataan
    2. Saat Anda menggunakan operator hapus pada nama variabel
    3. Menggunakan eval atau argumen sebagai nama argumen variabel atau fungsi
    4. Saat Anda menggunakan kata kunci yang baru dipesan
    5. Saat Anda mendeklarasikan fungsi di blok

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _14

    Karenanya, kesalahan dari kasus di atas sangat membantu untuk menghindari kesalahan dalam lingkungan pengembangan/produksi

  341. Apakah semua objek memiliki prototipe

    TIDAK. Semua objek memiliki prototipe kecuali objek dasar yang dibuat oleh pengguna, atau objek yang dibuat menggunakan kata kunci baru

  342. Apa perbedaan antara parameter dan argumen

    Parameter adalah nama variabel dari definisi fungsi sedangkan argumen mewakili nilai yang diberikan ke fungsi saat dipanggil. Mari kita jelaskan ini dengan fungsi sederhana

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _15

  343. Apa tujuan dari beberapa metode dalam array

    The some() method is used to test whether at least one element in the array passes the test implemented by the provided function. Metode mengembalikan nilai boolean. Mari kita ambil contoh untuk menguji elemen ganjil,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _16

  344. Bagaimana Anda menggabungkan dua atau lebih array

    Metode concat() digunakan untuk menggabungkan dua atau lebih array dengan mengembalikan array baru yang berisi semua elemen. Sintaksnya akan seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _17

    Mari kita ambil contoh rangkaian array dengan array sayuran dan buah-buahan,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _18

  345. Apa perbedaan antara salinan Dangkal dan Dalam

    Ada dua cara untuk menyalin objek,

    Salinan dangkal. Salinan dangkal adalah salinan bitwise dari suatu objek. Objek baru dibuat yang memiliki salinan persis dari nilai-nilai di objek asli. Jika salah satu bidang objek adalah referensi ke objek lain, hanya alamat referensi yang disalin i. e. , hanya alamat memori yang disalin

    Contoh

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    19

    untuk membuat duplikat

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _20

    jika kita mengubah beberapa nilai properti di duplikat seperti ini

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _21

    Pernyataan di atas juga akan mengubah nama

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    91, karena kita memiliki salinan yang dangkal. Itu berarti kami juga kehilangan data aslinya

    Salinan yang dalam. Salinan dalam menyalin semua bidang, dan membuat salinan memori yang dialokasikan secara dinamis yang ditunjukkan oleh bidang. Salinan yang dalam terjadi ketika sebuah objek disalin bersama dengan objek yang dirujuknya

    Contoh

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    19

    Buat salinan dalam dengan menggunakan properti dari objek asli ke dalam variabel baru

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _23

    Sekarang jika Anda mengubah

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _92, itu hanya akan mempengaruhi
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    93 & bukan
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    91

  346. Bagaimana Anda membuat sejumlah salinan tertentu dari sebuah string

    Metode

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    95 digunakan untuk membuat dan mengembalikan string baru yang berisi jumlah salinan string yang telah ditentukan yang disebutnya, digabungkan menjadi satu. Ingatlah bahwa metode ini telah ditambahkan ke spesifikasi ECMAScript 2015. Mari kita ambil contoh string Hello untuk mengulanginya 4 kali,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _24

  347. How do you return all matching strings against a regular expression

    Metode

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    96 dapat digunakan untuk mengembalikan iterator dari semua hasil yang cocok dengan string terhadap ekspresi reguler. Misalnya, contoh di bawah mengembalikan larik hasil string yang cocok dengan ekspresi reguler,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _25

  348. Bagaimana Anda memangkas string di awal atau akhir

    Metode prototipe string ________6______97 digunakan untuk memangkas kedua sisi string. Tetapi jika Anda ingin memangkas terutama di awal atau akhir string maka Anda dapat menggunakan metode

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    98 dan
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    99. Mari kita lihat contoh metode ini pada pesan ucapan,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _26

  349. Apa output dari pernyataan konsol di bawah ini dengan operator unary

    Mari kita ambil pernyataan konsol dengan operator unary seperti yang diberikan di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _27

    Output dari pernyataan log konsol di atas mengembalikan NaN. Karena elemen tersebut diawali oleh operator unary dan juru bahasa JavaScript akan mencoba mengubah elemen tersebut menjadi tipe angka. Karena konversi gagal, nilai pernyataan menghasilkan nilai NaN

  350. Apakah javascript menggunakan mixin

    Mixin adalah istilah pemrograman berorientasi objek generik - adalah kelas yang berisi metode yang dapat digunakan oleh kelas lain tanpa perlu mewarisinya. Dalam JavaScript kita hanya dapat mewarisi dari satu objek. yaitu. There can be only one

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    00 for an object

    Tapi terkadang kita perlu memperluas lebih dari satu, untuk mengatasinya kita bisa menggunakan Mixin yang membantu menyalin metode ke prototipe kelas lain

    Misalnya, kita memiliki dua kelas

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    01 dan
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    02. Misalkan kita perlu menambahkan fungsionalitas
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _02 ke
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    01, sehingga pengguna dapat membersihkan ruangan sesuai permintaan. Di sinilah konsep yang disebut mixin muncul

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _28

  351. Apa itu fungsi thunk

    Thunk hanyalah sebuah fungsi yang menunda evaluasi nilai. Itu tidak membutuhkan argumen apa pun tetapi memberikan nilai setiap kali Anda memanggil thunk. Saya. e, Ini digunakan untuk tidak mengeksekusi sekarang tetapi suatu saat nanti. Mari kita ambil contoh sinkron,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _29

  352. Apa itu pemikiran asinkron

    Thunk asinkron berguna untuk membuat permintaan jaringan. Mari kita lihat contoh permintaan jaringan,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _30

    Fungsi

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _05 tidak akan langsung dipanggil tetapi hanya akan dipanggil jika data tersedia dari titik akhir API. Fungsi setTimeout juga digunakan untuk membuat kode kita tidak sinkron. Contoh waktu nyata terbaik adalah redux state management library yang menggunakan asynchronous thunks untuk menunda tindakan pengiriman

  353. Apa output dari pemanggilan fungsi di bawah ini

    Cuplikan kode

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _31

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _32

    Keluaran

    Outputnya adalah 40 dan NaN. Ingatlah bahwa diameter adalah fungsi biasa, sedangkan nilai keliling adalah fungsi panah. The

    function func() {};
    
    new func(x, y, z);
    48 keyword of a regular function(i. e, diameter) refers to the surrounding scope which is a class(i. e, Bentuk objek). Sedangkan kata kunci fungsi perimeter ini mengacu pada ruang lingkup sekitarnya yang merupakan objek jendela. Karena tidak ada properti radius pada objek jendela, ia mengembalikan nilai yang tidak ditentukan dan kelipatan nilai angka mengembalikan nilai NaN

  354. Cara menghapus semua jeda baris dari sebuah string

    Pendekatan termudah adalah menggunakan ekspresi reguler untuk mendeteksi dan mengganti baris baru dalam string. Dalam hal ini, kami menggunakan fungsi ganti bersama dengan string untuk mengganti, yang dalam kasus kami adalah string kosong

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _33

    Pada ekspresi di atas, g dan m adalah untuk flag global dan multiline

  355. Apa perbedaan antara reflow dan repaint

    Pengecatan ulang terjadi ketika perubahan dibuat yang memengaruhi visibilitas elemen, tetapi bukan tata letaknya. Contohnya termasuk garis besar, visibilitas, atau warna latar belakang. Reflow melibatkan perubahan yang memengaruhi tata letak sebagian halaman (atau seluruh halaman). Mengubah ukuran jendela browser, mengubah font, mengubah konten (seperti teks yang diketik pengguna), menggunakan metode JavaScript yang melibatkan gaya terkomputasi, menambah atau menghapus elemen dari DOM, dan mengubah kelas elemen adalah beberapa hal yang dapat memicu reflow. Reflow suatu elemen menyebabkan reflow berikutnya dari semua elemen anak dan elemen leluhur serta elemen apa pun yang mengikutinya di DOM

  356. Apa yang terjadi dengan meniadakan array

    Meniadakan array dengan

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    07 karakter akan memaksa array menjadi boolean. Karena Array dianggap benar Jadi meniadakannya akan mengembalikan
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    08

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    34

  357. Apa yang terjadi jika kita menambahkan dua array

    Jika Anda menambahkan dua larik bersama, itu akan mengonversi keduanya menjadi string dan menggabungkannya. Misalnya, hasil penambahan array akan seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _35

  358. Apa output dari menambahkan operator tambahan pada nilai-nilai palsu

    Jika Anda menambahkan operator aditif(+) pada nilai palsu (null, undefined, NaN, false, ""), nilai palsu dikonversi menjadi angka bernilai nol. Mari kita tampilkan di konsol browser seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _36

  359. Bagaimana Anda membuat string sendiri menggunakan karakter khusus

    String diri dapat dibentuk dengan kombinasi

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    09 karakter. Anda perlu mengingat konvensi di bawah ini untuk mencapai pola ini

    1. Karena Array adalah nilai yang benar, meniadakan array akan menghasilkan false. . [] === salah
    2. Sesuai aturan pemaksaan JavaScript, penambahan array bersama-sama akan meringkasnya. [] + [] === ""
    3. Tambahkan array dengan + operator akan mengubah array menjadi false, negasi akan menjadikannya benar dan akhirnya mengonversi hasilnya akan menghasilkan nilai '1'. +(. (+[])) === 1

    Dengan menerapkan aturan di atas, kita dapat memperoleh kondisi di bawah ini

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _37

    Sekarang pola karakter akan dibuat seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _38

  360. Bagaimana Anda menghapus nilai-nilai palsu dari sebuah array

    Anda dapat menerapkan metode filter pada array dengan meneruskan Boolean sebagai parameter. Dengan cara ini menghapus semua nilai falsy(0, undefined, null, false dan "") dari array

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _39

  361. Bagaimana Anda mendapatkan nilai unik dari sebuah array

    Anda bisa mendapatkan nilai unik dari sebuah array dengan kombinasi

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    10 dan rest expression/spread(. ) sintaks

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _40

  362. Apa yang merusak alias

    Terkadang Anda ingin memiliki variabel yang didestrukturisasi dengan nama yang berbeda dari nama properti. Dalam hal ini, Anda akan menggunakan

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _11 untuk menentukan nama variabel. Proses ini disebut alias penghancuran

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _41

  363. How do you map the array values without using map method

    Anda dapat memetakan nilai array tanpa menggunakan metode

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    12 dengan hanya menggunakan metode
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    13 dari Array. Mari petakan nama kota dari larik Negara,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _42

  364. Bagaimana Anda mengosongkan array

    Anda dapat mengosongkan array dengan cepat dengan menyetel panjang array ke nol

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _43

  365. Bagaimana cara membulatkan angka ke desimal tertentu

    Anda dapat membulatkan angka ke angka desimal tertentu menggunakan metode

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    14 dari javascript asli

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _44

  366. Apa cara termudah untuk mengubah array menjadi objek

    Anda dapat mengonversi array menjadi objek dengan data yang sama menggunakan spread(. ) operator

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _45

  367. Bagaimana Anda membuat array dengan beberapa data

    Anda dapat membuat larik dengan beberapa data atau larik dengan nilai yang sama menggunakan metode

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    15

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _46

  368. Apa placeholder dari objek konsol

    Di bawah ini adalah daftar placeholder yang tersedia dari objek konsol,

    1. %o — It takes an object,
    2. %s — Dibutuhkan sebuah string,
    3. %d — Digunakan untuk desimal atau bilangan bulat Tempat penampung ini dapat direpresentasikan di konsol. log seperti di bawah ini

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _47

  369. Apakah mungkin menambahkan CSS ke pesan konsol

    Ya, Anda dapat menerapkan gaya CSS ke pesan konsol yang mirip dengan teks html di halaman web

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _48

    Teks akan ditampilkan seperti di bawah ini,

    Soal coding javascript untuk latihan

    Catatan. Semua gaya CSS dapat diterapkan ke pesan konsol

  370. Apa tujuan dari metode dir dari objek konsol

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _16 digunakan untuk menampilkan daftar interaktif properti objek JavaScript yang ditentukan sebagai JSON

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _49

    Objek pengguna ditampilkan dalam representasi JSON

    Soal coding javascript untuk latihan

  371. Apakah mungkin untuk men-debug elemen HTML di konsol

    Ya, adalah mungkin untuk mendapatkan dan men-debug elemen HTML di konsol seperti halnya memeriksa elemen

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _50

    Itu mencetak elemen HTML di konsol,

    Soal coding javascript untuk latihan

  372. How do you display data in a tabular format using console object

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _17 digunakan untuk menampilkan data di konsol dalam format tabel untuk memvisualisasikan array atau objek yang kompleks

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _51

    Data divisualisasikan dalam format tabel,

    Soal coding javascript untuk latihan
    Bukan. Ingatlah bahwa
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _17 tidak didukung di IE

  373. Bagaimana Anda memverifikasi bahwa argumen adalah Angka atau bukan

    Kombinasi metode IsNaN dan isFinite digunakan untuk mengonfirmasi apakah suatu argumen berupa angka atau bukan

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _52

  374. Bagaimana Anda membuat tombol salin ke clipboard

    Anda perlu memilih konten (menggunakan. pilih () metode) dari elemen input dan jalankan perintah salin dengan execCommand (i. e, execCommand('salin')). Anda juga dapat menjalankan perintah sistem lainnya seperti potong dan tempel

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _53

  375. Apa jalan pintas untuk mendapatkan stempel waktu

    Anda dapat menggunakan

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    19 untuk mendapatkan stempel waktu saat ini. Ada jalan pintas alternatif untuk mendapatkan nilai

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _54

  376. Bagaimana Anda meratakan array multi dimensi

    Meratakan array dua dimensi itu sepele dengan operator Spread

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _55

    Tapi Anda bisa membuatnya bekerja dengan array multidimensi dengan panggilan rekursif,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _56

    Anda juga dapat menggunakan metode Array

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _20

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    57

  377. What is the easiest multi condition checking

    Anda dapat menggunakan

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    21 untuk membandingkan input dengan banyak nilai alih-alih memeriksa setiap nilai sebagai satu syarat

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _58

  378. Bagaimana Anda menangkap tombol kembali browser

    Metode

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _22 digunakan untuk merekam peristiwa tombol kembali browser. Ini berguna untuk memperingatkan pengguna tentang kehilangan data saat ini

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _59

  379. Bagaimana Anda menonaktifkan klik kanan di halaman web

    Klik kanan pada halaman dapat dinonaktifkan dengan mengembalikan false dari atribut

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    23 pada elemen body

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _60

  380. Apa itu objek pembungkus

    Nilai Primitif seperti string, angka, dan boolean tidak memiliki properti dan metode tetapi untuk sementara dikonversi atau dipaksa menjadi objek (objek Pembungkus) saat Anda mencoba melakukan tindakan terhadapnya. Misalnya, jika Anda menerapkan metode toUpperCase() pada nilai string primitif, itu tidak menimbulkan kesalahan tetapi mengembalikan huruf besar dari string

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _61

    i. e, Setiap primitif kecuali nol dan tidak terdefinisi memiliki Objek Pembungkus dan daftar objek pembungkus adalah String, Angka, Boolean, Simbol, dan BigInt

  381. Apa itu AJAX

    AJAX adalah singkatan dari Asynchronous JavaScript and XML dan itu adalah sekelompok teknologi terkait (HTML, CSS, JavaScript, XMLHttpRequest API dll) yang digunakan untuk menampilkan data secara asinkron. Saya. e. We can send data to the server and get data from the server without reloading the web page

  382. Apa saja cara berbeda untuk menangani Kode Asinkron

    Di bawah ini adalah daftar berbagai cara untuk menangani kode Asinkron

    1. Panggilan balik
    2. Janji
    3. Asinkron/menunggu
    4. Pustaka pihak ketiga seperti async. js, bluebird dll

  383. Cara membatalkan permintaan pengambilan

    Sampai beberapa hari yang lalu, satu kekurangan dari native promise adalah tidak ada cara langsung untuk membatalkan permintaan pengambilan. Tapi

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    24 baru dari spesifikasi js memungkinkan Anda menggunakan sinyal untuk membatalkan satu atau beberapa panggilan pengambilan. Alur dasar pembatalan permintaan pengambilan adalah seperti di bawah ini,

    1. Buat instance
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      _24
    2. Dapatkan properti sinyal dari sebuah instance dan teruskan sinyal sebagai opsi pengambilan untuk sinyal
    3. Panggil properti abort dari AbortController untuk membatalkan semua pengambilan yang menggunakan sinyal tersebut. Sebagai contoh, mari berikan sinyal yang sama ke beberapa panggilan pengambilan yang akan membatalkan semua permintaan dengan sinyal tersebut,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _62

  384. Apa itu API ucapan web

    API ucapan web digunakan untuk memungkinkan browser modern mengenali dan mensintesis ucapan (i. e, data suara ke dalam aplikasi web). API ini telah diperkenalkan oleh Komunitas W3C pada tahun 2012. It has two main parts,

    1. SpeechRecognition (Pengenalan Ucapan Asynchronous atau Speech-to-Text). Ini memberikan kemampuan untuk mengenali konteks suara dari input audio dan meresponsnya dengan sesuai. Ini diakses oleh antarmuka
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      _26. Contoh di bawah ini menunjukkan cara menggunakan API ini untuk mendapatkan teks dari ucapan,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _63

    Di API ini, browser akan meminta izin Anda untuk menggunakan mikrofon Anda

    1. Sintesis Pidato (Teks-ke-Ucapan). Ini memberikan kemampuan untuk mengenali konteks suara dari input audio dan merespons. Ini diakses oleh antarmuka
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      _27. Misalnya, kode di bawah ini digunakan untuk mendapatkan suara/ucapan dari teks,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _64

    Contoh di atas dapat diuji pada konsol pengembang browser chrome(33+). Catatan. API ini masih berupa draft kerja dan hanya tersedia di browser Chrome dan Firefox (tentu saja Chrome hanya mengimplementasikan spesifikasinya)

  385. Apa itu pelambatan batas waktu minimum

    Lingkungan javascript browser dan NodeJS melambat dengan penundaan minimum yang lebih besar dari 0 md. Artinya walaupun setting delay 0ms tidak akan terjadi secara instan. Browsers. Mereka memiliki penundaan minimal 4ms. Throttle ini terjadi ketika panggilan berturut-turut dipicu karena callback nesting (kedalaman tertentu) atau setelah sejumlah interval berturut-turut. Catatan. Browser lama memiliki penundaan minimal 10ms. Nodejs. Mereka memiliki penundaan minimal 1ms. Throttle ini terjadi ketika penundaan lebih besar dari 2147483647 atau kurang dari 1. Contoh terbaik untuk menjelaskan perilaku pelambatan batas waktu ini adalah urutan cuplikan kode di bawah ini

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _65

    dan output akan masuk

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _66

    Jika Anda tidak menggunakan

    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _76, urutan log akan berurutan

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _67

    dan outputnya adalah,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _68

  386. Bagaimana Anda menerapkan batas waktu nol di browser modern

    Anda tidak dapat menggunakan setTimeout(fn, 0) untuk segera mengeksekusi kode karena penundaan minimum lebih dari 0 md. But you can use window. postMessage() untuk mencapai perilaku ini

  387. Apa tugas dalam loop acara

    Tugas adalah kode/program javascript apa pun yang dijadwalkan untuk dijalankan oleh mekanisme standar seperti awalnya mulai menjalankan program, menjalankan panggilan balik acara, atau interval atau batas waktu yang dipecat. Semua tugas ini dijadwalkan pada antrian tugas. Di bawah ini adalah daftar kasus penggunaan untuk menambahkan tugas ke antrean tugas,

    1. Saat program javascript baru dijalankan langsung dari konsol atau dijalankan oleh elemen
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      29, tugas akan ditambahkan ke antrian tugas
    2. Saat suatu peristiwa diaktifkan, panggilan balik peristiwa ditambahkan ke antrean tugas
    3. Saat setTimeout atau setInterval tercapai, panggilan balik terkait ditambahkan ke antrean tugas

  388. Apa itu tugas mikro

    Microtask adalah kode javascript yang perlu dieksekusi segera setelah tugas/microtask yang sedang dieksekusi selesai. Mereka agak memblokir di alam. Saya. e, Utas utama akan diblokir sampai antrian microtask kosong. Sumber utama microtasks adalah Promise. putuskan, Janji. tolak, MutationObservers, IntersectionObservers dll

    Catatan. All of these microtasks are processed in the same turn of the event loop.

  389. Apa itu loop acara yang berbeda

  390. Apa tujuan dari queueMicrotask

  391. Bagaimana Anda menggunakan pustaka javascript dalam file TypeScript

    Diketahui bahwa tidak semua pustaka atau kerangka kerja JavaScript memiliki file deklarasi TypeScript. Tetapi jika Anda masih ingin menggunakan pustaka atau kerangka kerja di file TypeScript kami tanpa mendapatkan kesalahan kompilasi, satu-satunya solusi adalah kata kunci

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    30 bersama dengan deklarasi variabel. Misalnya, bayangkan Anda memiliki pustaka bernama
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    31 yang tidak memiliki deklarasi TypeScript dan memiliki namespace bernama
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    31 di namespace global. Anda dapat menggunakan perpustakaan ini dalam kode TypeScript seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _69

    Saat runtime, TypeScript akan memberikan tipe ke variabel

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    31 sebagai tipe
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    34. Alternatif lain tanpa menggunakan kata kunci menyatakan di bawah ini

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _70

  392. Apa perbedaan antara janji dan yang bisa diamati

    Some of the major difference in a tabular form

    PromisesObservablesEmits hanya satu nilai pada satu waktuEmits beberapa nilai selama periode waktu (aliran nilai mulai dari 0 hingga beberapa)Bersemangat di alam;

  393. Apa itu tumpukan

    Heap(Atau tumpukan memori) adalah lokasi memori tempat objek disimpan saat kita mendefinisikan variabel. Saya. e, This is the place where all the memory allocations and de-allocation take place. Heap dan call-stack adalah dua kontainer runtime JS. Setiap kali runtime menemukan variabel dan deklarasi fungsi dalam kode, ia menyimpannya di Heap

    Soal coding javascript untuk latihan

  394. Apa itu meja acara

    Tabel Peristiwa adalah struktur data yang menyimpan dan melacak semua peristiwa yang akan dieksekusi secara asinkron seperti setelah beberapa interval waktu atau setelah penyelesaian beberapa permintaan API. Saya. e Setiap kali Anda memanggil fungsi setTimeout atau menjalankan operasi async, fungsi tersebut akan ditambahkan ke Tabel Acara. Itu tidak menjalankan fungsi sendiri. Tujuan utama dari tabel acara adalah untuk melacak acara dan mengirimkannya ke Antrean Acara seperti yang ditunjukkan pada diagram di bawah ini

    Soal coding javascript untuk latihan

  395. Apa itu antrian microTask

    Antrean Microtask adalah antrean baru tempat semua tugas yang diprakarsai oleh objek janji diproses sebelum antrean panggilan balik. Antrean microtasks diproses sebelum pekerjaan rendering dan pengecatan berikutnya. Tetapi jika microtasks ini berjalan dalam waktu lama maka akan menyebabkan degradasi visual

  396. Apa perbedaan antara shim dan polyfill

    Shim adalah perpustakaan yang membawa API baru ke lingkungan yang lebih lama, hanya menggunakan alat dari lingkungan itu. Itu tidak selalu terbatas pada aplikasi web. Misalnya, es5-shim. js digunakan untuk meniru fitur ES5 di browser lama (terutama sebelum IE9). Whereas polyfill is a piece of code (or plugin) that provides the technology that you, the developer, expect the browser to provide natively. Dalam kalimat sederhana, Polyfill adalah shim untuk API browser

  397. Bagaimana Anda mendeteksi tipe nilai primitif atau non primitif

    Dalam JavaScript, tipe primitif termasuk boolean, string, angka, BigInt, null, Simbol, dan tidak terdefinisi. Sedangkan tipe non-primitif termasuk Objek. Tetapi Anda dapat dengan mudah mengidentifikasinya dengan fungsi di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _71

    Jika nilainya adalah tipe data primitif, konstruktor Objek membuat objek pembungkus baru untuk nilainya. Tetapi jika nilainya adalah tipe data non-primitif (objek), konstruktor Objek akan memberikan objek yang sama

  398. Apa itu babel

    Babel adalah transpiler JavaScript untuk mengonversi kode ECMAScript 2015+ menjadi versi JavaScript yang kompatibel mundur di browser atau lingkungan saat ini dan yang lebih lama. Beberapa fitur utama tercantum di bawah ini,

    1. Mengubah sintaks
    2. Fitur Polyfill yang tidak ada di lingkungan target Anda (menggunakan @babel/polyfill)
    3. Transformasi kode sumber (atau codemods)

  399. Apakah Node. js sepenuhnya berulir tunggal

    Node adalah utas tunggal, tetapi beberapa fungsi termasuk dalam Node. js standard library(e. g, fungsi modul fs) bukan utas tunggal. Saya. e, Logika mereka berjalan di luar Node. js single thread untuk meningkatkan kecepatan dan performa program

  400. Apa kasus penggunaan umum yang dapat diamati

    Beberapa kasus penggunaan paling umum yang dapat diamati adalah soket web dengan pemberitahuan push, perubahan input pengguna, interval berulang, dll.

  401. Apa itu RxJS

    RxJS (Ekstensi Reaktif untuk JavaScript) adalah pustaka untuk mengimplementasikan pemrograman reaktif menggunakan objek yang dapat diamati yang membuatnya lebih mudah untuk menyusun kode berbasis asinkron atau panggilan balik. Ini juga menyediakan fungsi utilitas untuk membuat dan bekerja dengan yang dapat diamati

  402. Apa perbedaan antara konstruktor Fungsi dan deklarasi fungsi

    Fungsi yang dibuat dengan

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _35 tidak membuat penutupan untuk konteks pembuatannya tetapi selalu dibuat dalam lingkup global. Saya. e, fungsi dapat mengakses variabel lokalnya sendiri dan variabel lingkup global saja. Sedangkan deklarasi fungsi juga dapat mengakses variabel fungsi luar (penutupan).

    Mari kita lihat perbedaan ini dengan sebuah contoh,

    Pembuat Fungsi

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _72

    Deklarasi fungsi

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    73

  403. Apa itu kondisi hubung singkat

    Kondisi hubung singkat dimaksudkan untuk cara singkat menulis pernyataan if sederhana. Mari kita tunjukkan skenario menggunakan contoh. Jika Anda ingin masuk ke portal dengan kondisi autentikasi, ekspresinya akan seperti di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _74

    Karena operator logis javascript dievaluasi dari kiri ke kanan, ekspresi di atas dapat disederhanakan menggunakan && operator logis

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _75

  404. Apa cara termudah untuk mengubah ukuran array

    Properti length dari array berguna untuk mengubah ukuran atau mengosongkan array dengan cepat. Mari terapkan properti length pada array angka untuk mengubah ukuran jumlah elemen dari 5 menjadi 2,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _76

    dan array juga bisa dikosongkan

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _77

  405. Apa yang bisa diamati

    Observable pada dasarnya adalah fungsi yang dapat mengembalikan aliran nilai baik secara sinkron atau asinkron ke pengamat dari waktu ke waktu. Konsumen bisa mendapatkan nilai dengan memanggil metode

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    36. Mari kita lihat contoh sederhana dari Observable

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _78

    Soal coding javascript untuk latihan

    Note. Observable belum menjadi bagian dari bahasa JavaScript tetapi diusulkan untuk ditambahkan ke bahasa tersebut

  406. Apa perbedaan antara deklarasi fungsi dan kelas

    Perbedaan utama antara deklarasi fungsi dan deklarasi kelas adalah

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    37. Deklarasi fungsi diangkat tetapi bukan deklarasi kelas

    Kelas

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _79

    Fungsi Konstruktor

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _80

  407. Apa itu fungsi async

    Fungsi asinkron adalah fungsi yang dideklarasikan dengan kata kunci

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    38 yang memungkinkan perilaku asinkron berbasis janji untuk ditulis dalam gaya yang lebih bersih dengan menghindari rantai janji. Fungsi ini dapat berisi nol atau lebih
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    39 ekspresi

    Mari kita ambil contoh fungsi async di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _81

    Ini pada dasarnya adalah gula sintaksis atas janji dan generator ES2015

  408. Bagaimana Anda mencegah janji menelan kesalahan

    Saat menggunakan kode asinkron, janji ES6 JavaScript dapat membuat hidup Anda jauh lebih mudah tanpa piramida panggilan balik dan penanganan kesalahan di setiap baris kedua. Tapi Janji memiliki beberapa jebakan dan yang terbesar adalah menelan kesalahan secara default

    Katakanlah Anda berharap mencetak kesalahan ke konsol untuk semua kasus di bawah ini,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    82

    Tetapi ada banyak lingkungan JavaScript modern yang tidak mencetak kesalahan apa pun. Anda dapat memperbaiki masalah ini dengan berbagai cara,

    1. Tambahkan blok tangkap di akhir setiap rantai. Anda dapat menambahkan blok tangkap di akhir setiap rantai janji Anda

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _83

      Tetapi cukup sulit untuk mengetik untuk setiap rantai janji dan juga verbose

    2. Tambahkan metode selesai. Anda dapat mengganti solusi pertama kemudian dan menangkap blok dengan metode selesai

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _84

      Katakanlah Anda ingin mengambil data menggunakan HTTP dan kemudian melakukan pemrosesan pada data yang dihasilkan secara asinkron. Anda dapat menulis blok

      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      _31 seperti di bawah ini,

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _85

      Di masa mendatang, jika API perpustakaan pemrosesan berubah menjadi sinkron maka Anda dapat menghapus

      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      31 blok seperti di bawah ini,

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _86

      dan kemudian Anda lupa menambahkan

      // Create a new instance using function prototype.
      var newInstance = Object.create(func.prototype)
      
      // Call the function
      var result = func.call(newInstance, x, y, z),
      
      // If the result is a non-null object then use it otherwise just use the new instance.
      console.log(result && typeof result === 'object' ? result : newInstance);
      _31 blok ke
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      43 blok menyebabkan kesalahan diam

    3. Perpanjang Janji ES6 oleh Bluebird. Bluebird memperluas ES6 Promises API untuk menghindari masalah di solusi kedua. Pustaka ini memiliki penangan onRejection "default" yang akan mencetak semua kesalahan dari Janji yang ditolak ke stderr. After installation, you can process unhandled rejections

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _87

      dan buang penolakan, tangani saja dengan tangkapan kosong

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _88

  409. Apa itu den

    Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 JavaScript engine and the Rust programming language

  410. Bagaimana Anda membuat objek dapat diubah dalam javascript

    Secara default, objek biasa tidak dapat diubah. Tapi Anda bisa membuat objek iterable dengan mendefinisikan properti

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    44 di atasnya

    Let's demonstrate this with an example,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    89

    The above process can be simplified using a generator function,

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _90

  411. Apa itu Panggilan Ekor yang Tepat

    First, we should know about tail call before talking about "Proper Tail Call". Tail call adalah subrutin atau pemanggilan fungsi yang dilakukan sebagai tindakan terakhir dari pemanggilan fungsi. Sedangkan Proper tail call (PTC) adalah teknik di mana program atau kode tidak akan membuat frame stack tambahan untuk rekursi ketika pemanggilan fungsi adalah panggilan ekor

    For example, the below classic or head recursion of factorial function relies on stack for each step. Setiap langkah perlu diproses hingga

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _45

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    91

    But if you use Tail recursion functions, they keep passing all the necessary data it needs down the recursion without relying on the stack

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _92

    Pola di atas mengembalikan output yang sama dengan yang pertama. But the accumulator keeps track of total as an argument without using stack memory on recursive calls

  412. Bagaimana Anda memeriksa suatu objek adalah janji atau tidak

    Jika Anda tidak tahu apakah suatu nilai adalah janji atau bukan, bungkus nilai sebagai

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    46 yang mengembalikan janji

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _93

    Another way is to check for

    function func() {};
    
    new func(x, y, z);
    71 handler type

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _94

  413. Cara mendeteksi jika suatu fungsi disebut sebagai konstruktor

    You can use

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    48 pseudo-property to detect whether a function was called as a constructor(using the new operator) or as a regular function call

    1. If a constructor or function invoked using the new operator, new. target mengembalikan referensi ke konstruktor atau fungsi
    2. For function calls, new. target is undefined

    function Person(name) {
      this.name = name;
      this.age = 21;
    }
    var object = new Person("Sudheer");
    _95

  414. What are the differences between arguments object and rest parameter

    Ada tiga perbedaan utama antara objek argumen dan parameter lainnya

    1. Objek argumen adalah seperti array tetapi bukan array. Whereas the rest parameters are array instances
    2. The arguments object does not support methods such as sort, map, forEach, or pop. Padahal metode tersebut dapat digunakan pada parameter rest
    3. The rest parameters are only the ones that haven’t been given a separate name, while the arguments object contains all arguments passed to the function

  415. Apa perbedaan antara operator spread dan parameter istirahat

    Rest parameter collects all remaining elements into an array. Sedangkan operator Spread memungkinkan iterables (array / objek / string) untuk diperluas menjadi argumen / elemen tunggal. i. e, parameter Istirahat berlawanan dengan operator spread

  416. What are the different kinds of generators

    There are five kinds of generators,

    1. Generator function declaration

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _96

    2. Ekspresi fungsi generator

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _97

    3. Definisi metode generator dalam literal objek

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      _98

    4. Definisi metode generator di kelas

      function Person(name) {
        this.name = name;
        this.age = 21;
      }
      var object = new Person("Sudheer");
      99

    5. Generator as a computed property

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      00

  417. Apa itu iterables bawaan

    Di bawah ini adalah daftar iterable bawaan dalam javascript,

    1. Arrays and TypedArrays
    2. String. Iterate over each character or Unicode code-points
    3. Maps. ulangi pasangan kunci-nilainya
    4. Sets. iterates over their elements
    5. argumen. Variabel khusus seperti array dalam fungsi
    6. DOM collection such as NodeList

  418. Apa perbedaan antara untuk. of and for. dalam pernyataan

    Keduanya untuk. in and for. pernyataan iterate atas struktur data js. Satu-satunya perbedaan adalah pada apa yang mereka iterasi

    1. for. di mengulangi semua kunci properti yang dapat dihitung dari suatu objek
    2. untuk. of iterates over the values of an iterable object

    Let's explain this difference with an example,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    01

    Since for. dalam loop mengulangi kunci objek, loop pertama mencatat 0, 1, 2 dan newProp sambil mengulangi objek array. The for. of loop iterates over the values of a arr data structure and logs a, b, c in the console

  419. How do you define instance and non-instance properties

    The Instance properties must be defined inside of class methods. For example, name and age properties defined inside constructor as below,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    02

    Tetapi properti data Statis(kelas) dan prototipe harus didefinisikan di luar deklarasi ClassBody. Let's assign the age value for Person class as below,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _03

  420. What is the difference between isNaN and Number. isNaN?

    1. isNaN. The global function
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      49 converts the argument to a Number and returns true if the resulting value is NaN
    2. Nomor. isNaN. This method does not convert the argument. But it returns true when the type is a Number and value is NaN

    Let's see the difference with an example,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _04

  421. How to invoke an IIFE without any extra brackets?

    Ekspresi Fungsi Segera Dipanggil (IIFE) membutuhkan sepasang tanda kurung untuk membungkus fungsi yang berisi kumpulan pernyataan

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _05

    Karena operator IIFE dan void membuang hasil ekspresi, Anda dapat menghindari tanda kurung ekstra menggunakan

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    50 untuk IIFE seperti di bawah ini,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _06

  422. Is that possible to use expressions in switch cases?

    You might have seen expressions used in switch condition but it is also possible to use for switch cases by assigning true value for the switch condition. Let's see the weather condition based on temparature as an example,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _07

  423. What is the easiest way to ignore promise errors?

    Cara termudah dan teraman untuk mengabaikan kesalahan janji adalah membatalkan kesalahan itu. Pendekatan ini juga ramah ESLint

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    08

  424. How do style the console output using CSS?

    Anda dapat menambahkan gaya CSS ke keluaran konsol menggunakan penentu konten format CSS %c. The console string message can be appended after the specifier and CSS style in another argument. Mari cetak teks warna merah menggunakan konsol. log dan penentu CSS seperti di bawah ini,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _09

    Dimungkinkan juga untuk menambahkan lebih banyak gaya untuk konten. For example, the font-size can be modified for the above text

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _10

  425. What is nullish coalescing operator (??)?

    It is a logical operator that returns its right-hand side operand when its left-hand side operand is null or undefined, and otherwise returns its left-hand side operand. This can be contrasted with the logical OR (. ) operator, which returns the right-hand side operand if the left operand is any falsy value, not only null or undefined

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _11

  426. How do you group and nest console output?

    The

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    51 can be used to group related log messages to be able to easily read the logs and use console. groupEnd() untuk menutup grup. Along with this, you can also nest groups which allows to output message in hierarchical manner

    Misalnya, jika Anda mencatat detail pengguna

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _12

    Anda juga dapat menggunakan

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    52 alih-alih
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    51 jika Anda ingin grup diciutkan secara default

  427. What is the difference between dense and sparse arrays?

    An array contains items at each index starting from first(0) to last(array. length - 1) is called as Dense array. Sedangkan jika setidaknya satu item hilang pada indeks mana pun, array disebut jarang

    Mari kita lihat dua jenis array di bawah ini,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _13

  428. What are the different ways to create sparse arrays?

    There are 4 different ways to create sparse arrays in JavaScript

    1. Array literal. Hilangkan nilai saat menggunakan array literal

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _14

    2. Array() konstruktor. Memanggil Array(panjang) atau Array(panjang) baru

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _15

    3. Hapus operator. Menggunakan operator delete array[index] pada array

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _16

    4. Tingkatkan properti panjang. Increasing length property of an array

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _17

  429. Apa perbedaan antara setTimeout, setImmediate, dan proses. nextTick?

    1. Tetapkan Batas Waktu. setTimeout() adalah menjadwalkan eksekusi panggilan balik satu kali setelah penundaan milidetik
    2. Tetapkan Segera. Fungsi setImmediate digunakan untuk menjalankan fungsi tepat setelah perulangan peristiwa saat ini selesai
    3. Proses BerikutnyaCentang. If process. nextTick() dipanggil dalam fase tertentu, semua panggilan balik diteruskan ke proses. nextTick() akan diselesaikan sebelum event loop berlanjut. Ini akan memblokir loop acara dan membuat I/O Starvation jika proses. nextTick() disebut secara rekursif

  430. Bagaimana Anda membalikkan array tanpa mengubah array asli?

    Metode

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _54 membalikkan urutan elemen dalam array tetapi mengubah array asli. Mari kita ambil contoh sederhana untuk mendemonstrasikan kasus ini,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _18

    Ada beberapa solusi yang tidak akan mengubah array asli. Mari lihat

    1. Menggunakan metode slice dan reverse. Dalam hal ini, aktifkan saja metode

      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      _55 pada array untuk membuat salinan dangkal diikuti dengan panggilan metode
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      54 pada salinan

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _19

    2. Menggunakan metode spread dan reverse. Dalam hal ini, mari gunakan sintaks spread (. ) untuk membuat salinan array diikuti dengan panggilan metode

      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      54 pada salinan

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _20

    3. Menggunakan metode pengurangan dan penyebaran. Di sini jalankan fungsi peredam pada elemen array dan tambahkan array yang terakumulasi di sisi kanan menggunakan sintaks spread

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _21

    4. Menggunakan metode reduceRight dan spread. Here execute a right reducer function(i. e. arah berlawanan dari metode pengurangan) pada elemen array dan tambahkan array terakumulasi di sisi kiri menggunakan sintaks spread

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _22

    5. Menggunakan metode reduceRight dan push. Di sini jalankan fungsi peredam kanan (i. e. arah berlawanan dari metode pengurangan) pada elemen array dan Dorong nilai iterasi ke akumulator

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      23

  431. Bagaimana Anda membuat elemen HTML khusus?

    Pembuatan elemen HTML kustom melibatkan dua langkah utama,

    1. Tentukan elemen HTML khusus Anda. Pertama, Anda perlu mendefinisikan beberapa kelas khusus dengan memperluas kelas HTMLElement. Setelah itu tentukan properti komponen Anda (gaya, teks dll) menggunakan metode
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      58. Catatan. Browser memaparkan fungsi yang disebut
      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      _59 untuk menggunakan kembali elemen tersebut

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _24

    2. Use custome element just like other HTML element. Nyatakan elemen khusus Anda sebagai tag HTML

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    25

  432. Apa itu konteks eksekusi global?

    The global execution context is the default or first execution context that is created by the JavaScript engine before any code is executed(i. e, saat file pertama kali dimuat di browser). Semua kode global yang tidak ada di dalam fungsi atau objek akan dieksekusi di dalam konteks eksekusi global ini. Karena mesin JS adalah utas tunggal, hanya akan ada satu lingkungan global dan hanya akan ada satu konteks eksekusi global

    Misalnya, kode di bawah selain kode di dalam fungsi atau objek apa pun dijalankan di dalam konteks eksekusi global

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _26

  433. Apa itu konteks eksekusi fungsi?

    Whenever a function is invoked, the JavaScript engine creates a different type of Execution Context known as a Function Execution Context (FEC) within the Global Execution Context (GEC) to evaluate and execute the code within that function

  434. Apa itu debouncing?

    Debouncing is a programming pattern that allows delaying execution of some piece of code until a specified time to avoid unnecessary CPU cycles, API calls and improve performance. Fungsi debounce memastikan bahwa kode Anda hanya dipicu sekali per input pengguna. Kasus penggunaan yang umum adalah saran kotak Pencarian, penyimpanan otomatis bidang teks, dan menghilangkan klik tombol dua kali

    Katakanlah Anda ingin menampilkan saran untuk kueri penelusuran, tetapi hanya setelah pengunjung selesai mengetiknya. Jadi di sini Anda menulis fungsi debounce di mana pengguna terus menulis karakter dalam 500 md kemudian pengatur waktu sebelumnya dihapus menggunakan

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    60 dan menjadwal ulang permintaan panggilan/DB API untuk waktu baru—300 md di masa mendatang

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _27

    Fungsi debounce() dapat digunakan pada peristiwa input, tombol, dan jendela

    Memasukkan

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _28

    Tombol

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _29

    acara Windows

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _30

  435. Apa itu throttling?

    Throttling adalah teknik yang digunakan untuk membatasi eksekusi fungsi event handler, bahkan saat event ini terpicu terus menerus karena tindakan pengguna. Kasus penggunaan yang umum adalah pengubahan ukuran browser, pengguliran jendela, dll

    Contoh di bawah membuat fungsi throttle untuk mengurangi jumlah kejadian untuk setiap perubahan piksel dan memicu kejadian gulir untuk setiap 100 md kecuali untuk kejadian pertama

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _31

  436. Apa itu rangkaian opsional?

    Menurut dokumen resmi MDN, operator rangkaian opsional (?. ) memungkinkan membaca nilai properti yang terletak jauh di dalam rantai objek yang terhubung tanpa harus secara tegas memvalidasi bahwa setiap referensi dalam rantai itu valid

    Itu?. operatornya seperti. operator rantai, kecuali bahwa alih-alih menyebabkan kesalahan jika referensi adalah nullish (nol atau tidak terdefinisi), ekspresi hubungan pendek dengan nilai kembalian tidak terdefinisi. Saat digunakan dengan pemanggilan fungsi, ia mengembalikan undefined jika fungsi yang diberikan tidak ada

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _32

  437. Apa itu catatan lingkungan?

    Menurut spesifikasi ECMAScript 262 (9. 1)

    adalah tipe spesifikasi yang digunakan untuk menentukan asosiasi Pengidentifikasi ke variabel dan fungsi tertentu, berdasarkan struktur bersarang leksikal kode ECMAScript

    Biasanya Catatan Lingkungan dikaitkan dengan beberapa struktur sintaksis tertentu dari kode ECMAScript seperti FunctionDeclaration, BlockStatement, atau klausa Catch dari TryStatement

    Setiap kali kode tersebut dievaluasi, Catatan Lingkungan baru dibuat untuk merekam pengikatan pengidentifikasi yang dibuat oleh kode tersebut

  438. Bagaimana cara memverifikasi jika suatu variabel adalah array?

    Dimungkinkan untuk memeriksa apakah suatu variabel adalah instance array menggunakan 3 cara berbeda,

    1. Himpunan. metode isArray()

      Fungsi utilitas

      class Person {
        constructor(name) {
          this.name = name;
        }
      }
      
      var object = new Person("Sudheer");
      _61 digunakan untuk menentukan apakah nilai adalah array atau bukan. Fungsi ini mengembalikan nilai boolean yang benar jika variabelnya adalah array dan nilai yang salah jika bukan

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _33

    2. operator instanceof

      Operator instanceof digunakan untuk memeriksa jenis array pada saat dijalankan. Mengembalikan nilai true jika tipe variabel adalah Array other false untuk tipe lainnya

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _34

    3. Memeriksa tipe konstruktor

      Properti konstruktor dari variabel tersebut digunakan untuk menentukan apakah variabel tersebut bertipe Array atau tidak

      function Person() {}
      Person.prototype.name = "Sudheer";
      var object = new Person();
      _35

  439. Apa itu pass by value dan pass by reference?

    Pass-by-value membuat ruang baru di memori dan membuat salinan dari sebuah nilai. Primitif seperti string, angka, boolean dll sebenarnya akan membuat salinan baru. Oleh karena itu, memperbarui satu nilai tidak memengaruhi nilai lainnya. Saya. e, Nilai-nilai tidak tergantung satu sama lain

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _36

    Dalam cuplikan kode di atas, nilai

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _62 ditugaskan ke
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    18 dan variabel
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    18 telah bertambah. Karena ada ruang baru yang dibuat untuk variabel
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    18, setiap pembaruan pada variabel ini tidak memengaruhi variabel
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    62

    Referensi lewat tidak membuat ruang baru di memori tetapi variabel baru mengadopsi alamat memori dari variabel awal. Non-primitif seperti objek, array, dan fungsi mendapatkan referensi dari variabel yang dapat diinisiasi. Saya. e, memperbarui satu nilai akan berdampak pada variabel lainnya

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _37

    Dalam cuplikan kode di atas, memperbarui properti

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    67 dari satu objek akan memengaruhi properti lainnya karena referensi yang sama

  440. Apa perbedaan antara primitif dan non-primitif?

    Bahasa JavaScript memiliki primitif dan non-primitif tetapi ada beberapa perbedaan di antara keduanya seperti di bawah ini,

    Primitif Non-primitif Tipe ini telah ditentukan sebelumnya Dibuat oleh pengembang Ini tidak dapat diubah Dapat diubah Bandingkan dengan nilai Bandingkan dengan referensi Disimpan di StackStored di heapBerisi nilai tertentuDapat berisi NULL juga

  441. Bagaimana Anda membuat metode bind Anda sendiri menggunakan metode call atau apply?

    Fungsi pengikatan khusus perlu dibuat pada prototipe Fungsi untuk menggunakannya sebagai fungsi bawaan lainnya. Fungsi kustom ini harus mengembalikan fungsi yang mirip dengan metode bind asli dan implementasi fungsi dalam perlu menggunakan panggilan metode apply

    Fungsi yang akan diikat menggunakan metode

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    68 khusus bertindak sebagai fungsi terlampir (
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    69) dan argumen sebagai objek untuk pemanggilan metode
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    70

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _38

  442. Apa perbedaan antara fungsi murni dan tidak murni?

Beberapa perbedaan utama antara fungsi murni dan tidak murni adalah sebagai berikut,

Fungsi murni Fungsi tidak murni Tidak memiliki efek samping Menyebabkan efek samping Selalu mengembalikan hasil yang sama Mengembalikan hasil yang berbeda pada setiap panggilan Mudah dibaca dan di-debug Sulit dibaca dan di-debug karena dipengaruhi oleh kode eksternal

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_39

  1. Apa itu transparansi referensial?

Ekspresi dalam javascript dapat diganti nilainya tanpa mempengaruhi perilaku program yang disebut transparansi referensial. Fungsi murni secara referensi transparan

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_40

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_39

  1. Apa kemungkinan efek samping dalam javascript?

Efek samping adalah modifikasi status melalui pemanggilan fungsi atau ekspresi. Efek samping ini membuat fungsi kita tidak murni secara default. Di bawah ini adalah beberapa efek samping yang membuat fungsi tidak murni,

  1. Membuat permintaan HTTP. Fungsi asinkron seperti pengambilan dan janji tidak murni

  2. manipulasi DOM

  3. Memutasi data masukan

  4. Mencetak ke layar atau konsol. Misalnya, konsol. log() dan waspada()

  5. Mengambil waktu saat ini

  6. Matematika. acak() panggilan. Memodifikasi keadaan internal objek Math

  7. Apa itu fungsi komposisi dan pipa?

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_42

  1. Apa itu pola modul?

    Pola modul adalah pola yang dirancang yang digunakan untuk membungkus sekumpulan variabel dan fungsi bersama-sama dalam satu ruang lingkup yang dikembalikan sebagai objek. JavaScript tidak memiliki penentu akses yang mirip dengan bahasa lain (Java, Python, dll) untuk menyediakan ruang lingkup pribadi. Ini menggunakan IFFI (Ekspresi fungsi yang segera dipanggil) untuk memungkinkan cakupan pribadi. Saya. e, penutupan yang melindungi variabel dan metode

    Pola modul terlihat seperti di bawah ini,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _43

    Mari kita lihat contoh pola modul untuk karyawan dengan akses privat dan publik,

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _44

    Catatan. Itu meniru konsep kelas dengan variabel dan metode pribadi

  2. Apa itu Komposisi Fungsi?

    Ini adalah pendekatan di mana hasil dari satu fungsi diteruskan ke fungsi berikutnya, yang diteruskan ke fungsi lain hingga fungsi terakhir dieksekusi untuk hasil akhir

    function Person() {}
    Person.prototype.name = "Sudheer";
    var object = new Person();
    _45

Latihan Pengodean

1. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_46

  • 1. Belum diartikan
  • 2. ReferensiKesalahan
  • 3. batal
  • 4. {model. "Honda", warna. "putih", tahun. "2010", negara. "Inggris Raya"}
Menjawab
Menjawab. 4

Deklarasi fungsi diangkat mirip dengan variabel apa pun. Jadi penempatan untuk deklarasi fungsi

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_71 tidak ada bedanya


2. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_47

  • 1. 1, tidak terdefinisi dan tidak terdefinisi
  • 2. ReferensiKesalahan. X tidak ditentukan
  • 3. 1, tidak terdefinisi dan angka
  • 4. 1, angka dan angka
Menjawab
Menjawab. 3

Tentu saja nilai pengembalian

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_72 adalah 1 karena operator kenaikan. Tapi pernyataan
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_73 mendeklarasikan variabel lokal x. Sedangkan y dideklarasikan sebagai variabel global secara tidak sengaja. Pernyataan ini setara dengan,

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_48

Karena variabel cakupan blok x tidak terdefinisi di luar fungsi, jenisnya juga tidak terdefinisi. Sedangkan variabel global

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
74 tersedia di luar fungsi, nilainya 0 dan tipenya adalah angka


3. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_49

  • 1. A, B dan C
  • 2. B, A and C
  • 3. A dan C
  • 4. A, C dan B
Menjawab
Menjawab. 4

Urutan pernyataan didasarkan pada mekanisme event loop. Urutan pernyataan mengikuti urutan di bawah ini,

  1. Pada awalnya, fungsi utama didorong ke tumpukan
  2. Kemudian browser mendorong pernyataan pertama dari fungsi utama (i. e, konsol A. log) ke tumpukan, mengeksekusi dan keluar dengan segera
  3. Tapi pernyataan
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _76 dipindahkan ke Browser API untuk menerapkan penundaan panggilan balik
  4. Sementara itu, konsol C. log ditambahkan ke tumpukan, dieksekusi dan muncul
  5. Callback
    // Create a new instance using function prototype.
    var newInstance = Object.create(func.prototype)
    
    // Call the function
    var result = func.call(newInstance, x, y, z),
    
    // If the result is a non-null object then use it otherwise just use the new instance.
    console.log(result && typeof result === 'object' ? result : newInstance);
    _76 dipindahkan dari Browser API ke antrean pesan
  6. Fungsi
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    _77 muncul dari tumpukan karena tidak ada pernyataan untuk dijalankan
  7. Panggilan balik dipindahkan dari antrian pesan ke tumpukan karena tumpukan kosong
  8. Konsol. log untuk B ditambahkan ke tumpukan dan ditampilkan di konsol

4. Apa output dari pemeriksaan kesetaraan di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_50

  • 1. false
  • 2. BENAR
Menjawab
Menjawab. 1

Ini karena masalah matematika float point. Karena angka floating point dikodekan dalam format biner, operasi penambahan pada angka tersebut menyebabkan kesalahan pembulatan. Oleh karena itu, perbandingan floating point tidak memberikan hasil yang diharapkan. Anda dapat menemukan detail lebih lanjut tentang penjelasannya di sini 0. 300000000000000004. com/


5. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_51

  • 1. 1 fungsi
  • 2. 1 objek
  • 3. ReferensiKesalahan
  • 4. 1 tidak terdefinisi
Menjawab
Menjawab. 4

Poin utama dalam cuplikan kode di atas adalah,

  1. Anda dapat melihat ekspresi fungsi alih-alih deklarasi fungsi di dalam pernyataan if. So it always returns true
  2. Karena tidak dideklarasikan (atau ditugaskan) di mana pun, f tidak terdefinisi dan typeof f juga tidak terdefinisi

Dengan kata lain, sama dengan

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_52

Catatan. Ini mengembalikan 1 objek untuk browser MS Edge


6. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_53

  • 1. Halo Dunia
  • 2. Objek {pesan. "Halo Dunia"}
  • 3. Belum diartikan
  • 4. Kesalahan sintaks
Menjawab
Menjawab. 3

Ini adalah masalah titik koma. Biasanya titik koma bersifat opsional dalam JavaScript. Jadi jika ada pernyataan (dalam hal ini, kembali) titik koma yang hilang, maka secara otomatis dimasukkan segera. Oleh karena itu, fungsi dikembalikan sebagai tidak terdefinisi

Sedangkan jika kurung kurawal buka bersamaan dengan kata kunci return maka fungsinya akan dikembalikan seperti yang diharapkan

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_54


7. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
55

  • 1. [kosong, 'b', 'c', 'd'], kosong, 3
  • 2. [nol, 'b', 'c', 'd'], kosong, 3
  • 3. [kosong, 'b', 'c', 'd'], tidak ditentukan, 4
  • 4. [nol, 'b', 'c', 'd'], tidak terdefinisi, 4
Menjawab
Menjawab. 3

Operator

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_78 akan menghapus properti objek tetapi tidak akan mengindeks ulang array atau mengubah panjangnya. Jadi jumlah atau elemen atau panjang array tidak akan diubah. Jika Anda mencoba untuk mencetak myChars maka Anda dapat mengamati bahwa itu tidak menetapkan nilai yang tidak ditentukan, melainkan properti dihapus dari array. Versi terbaru Chrome menggunakan
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_79 alih-alih
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
80 untuk memperjelas perbedaannya


8. Apa output dari kode di bawah ini di Chrome terbaru

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_56

  • 1. [tidak terdefinisi × 3], [tidak terdefinisi × 2, 100], [tidak terdefinisi × 3]
  • 2. [kosong × 3], [kosong × 2, 100], [kosong × 3]
  • 3. [nol × 3], [nol × 2, 100], [nol × 3]
  • 4. [], [100], []
Menjawab
Menjawab. 2

Versi chrome terbaru menampilkan

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
81(diisi dengan lubang) menggunakan notasi xn kosong ini. Sedangkan versi yang lebih lama memiliki notasi x n yang tidak terdefinisi. Note. Versi terbaru FF menampilkan notasi
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_82


9. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_57

  • 1. 0, 1, 2
  • 2. 0, { kembali 1 }, 2
  • 3. 0, { kembali 1 }, { kembali 2 }
  • 4. 0, 1, tidak terdefinisi
Menjawab
Menjawab. 1

ES6 menyediakan definisi metode dan singkatan properti untuk objek. Jadi prop2 dan prop3 diperlakukan sebagai nilai fungsi biasa


10. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_58

  • 1. betul betul
  • 2. benar salah
  • 3. SyntaxError, SyntaxError,
  • 4. palsu, salah
Menjawab
Menjawab. 2

Poin pentingnya adalah jika pernyataan tersebut berisi operator yang sama (mis. g, < atau >) maka dapat dievaluasi dari kiri ke kanan. Pernyataan pertama mengikuti urutan di bawah ini,

  1. menghibur. log(1 < 2 < 3);
  2. menghibur. log(benar < 3);
  3. menghibur. log(1 < 3);
  4. True

Whereas the second statement follows the below order,

  1. menghibur. log(3 > 2 > 1);
  2. menghibur. log(benar > 1);
  3. menghibur. log(1 > 1);
  4. PALSU

11. Apa output dari kode di bawah ini dalam mode non-ketat

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_59

  • 1. 1, 2, 3
  • 2. 3, 2, 3
  • 3. Kesalahan sintaks. Nama parameter duplikat tidak diperbolehkan dalam konteks ini
  • 4. 1, 2, 1
Menjawab
Menjawab. 2

Dalam mode non-ketat, fungsi JavaScript reguler memungkinkan parameter bernama duplikat. Cuplikan kode di atas memiliki parameter duplikat pada parameter ke-1 dan ke-3. Nilai parameter pertama dipetakan ke argumen ketiga yang diteruskan ke fungsi. Hence, the 3rd argument overrides the first parameter

Catatan. Dalam mode ketat, parameter duplikat akan menimbulkan Kesalahan Sintaks


12. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_60

  • 1. 1, 2, 3
  • 2. 3, 2, 3
  • 3. Kesalahan sintaks. Nama parameter duplikat tidak diperbolehkan dalam konteks ini
  • 4. 1, 2, 1
Menjawab
Menjawab. 3

Tidak seperti fungsi biasa, fungsi panah tidak mengizinkan parameter duplikat baik dalam mode ketat maupun non-ketat. Jadi Anda bisa melihat

// Create a new instance using function prototype.
var newInstance = Object.create(func.prototype)

// Call the function
var result = func.call(newInstance, x, y, z),

// If the result is a non-null object then use it otherwise just use the new instance.
console.log(result && typeof result === 'object' ? result : newInstance);
_45 di konsol


13. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_61

  • 1. ReferensiKesalahan. argumen tidak ditentukan
  • 2. 3
  • 3. belum diartikan
  • 4. batal
Menjawab
Menjawab. 1

Fungsi panah tidak memiliki

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_86 binding. Jadi setiap referensi ke variabel
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
87 mencoba untuk menyelesaikan ke pengikatan dalam lingkungan yang tertutup secara leksikal. Dalam hal ini, variabel argumen tidak didefinisikan di luar fungsi panah. Hence, you will receive a reference error

Sedangkan fungsi normal memberikan jumlah argumen yang diteruskan ke fungsi

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_62

Tapi Jika Anda masih ingin menggunakan fungsi panah maka operator istirahat pada argumen memberikan argumen yang diharapkan

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_63


14. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_64

  • 1. Benar salah
  • 2. Salah benar
Menjawab
Menjawab. 2

Agar konsisten dengan fungsi seperti

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
88, nama metode standar untuk memangkas spasi dianggap sebagai
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
89. Karena alasan kompatibilitas web, nama metode lama 'trimLeft' masih berfungsi sebagai alias untuk 'trimStart'. Oleh karena itu, prototipe untuk 'trimLeft' selalu 'trimStart'


15. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_65

  • 1. belum diartikan
  • 2. Ketakterbatasan
  • 3. 0
  • 4. -Infinity
Menjawab
Menjawab. 4

-Infinity adalah pembanding awal karena hampir semua nilai lainnya lebih besar. Jadi ketika tidak ada argumen yang diberikan, -Infinity akan dikembalikan. Catatan. Zero number of arguments is a valid case


16. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_66

  • 1. Betul betul
  • 2. Benar salah
  • 3. Salah, Salah
  • 4. Salah benar
Menjawab
Menjawab. 1

Sesuai algoritma perbandingan dalam spesifikasi ECMAScript (ECMA-262), ekspresi di atas diubah menjadi JS seperti di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_67

Jadi tidak masalah tentang kurung angka ([]) di sekitar angka, itu selalu dikonversi menjadi angka dalam ekspresi


17. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_68

  • 1. 20, 0
  • 2. 1010, 0
  • 3. 1010, 10-10
  • 4. NaN, NaN
Menjawab
Menjawab. 2

Operator penggabungan (+) berlaku untuk tipe angka dan string. Jadi jika ada operan bertipe string maka kedua operan digabungkan sebagai string. Whereas subtract(-) operator tries to convert the operands as number type


18. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_69

  • 1. Benar, Aku Benar
  • 2. Benar, Saya Salah
  • 3. Salah, Aku Benar
  • 4. Salah, Saya Salah
Menjawab
Menjawab. 1

Dalam operator pembanding, ekspresi

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
90 dikonversi menjadi Number([0]. Nilai dari(). toString()) yang diselesaikan menjadi false. Sedangkan
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_90 hanya menjadi nilai kebenaran tanpa konversi apapun karena tidak ada operator pembanding

19. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_70

  • 1. [1,2,3,4]
  • 2. [1,2][3,4]
  • 3. Kesalahan sintaks
  • 4. 1,23,4
Menjawab
Menjawab. 4

Operator + tidak dimaksudkan atau didefinisikan untuk array. Jadi itu mengubah array menjadi string dan menggabungkannya


20. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_71

  • 1. {1, 2, 3, 4}, {"F", "i", "r", "e", "f", "o", "x"}
  • 2. {1, 2, 3, 4}, {"F", "i", "r", "e", "o", "x"}
  • 3. [1, 2, 3, 4], ["F", "i", "r", "e", "o", "x"]
  • 4. {1, 1, 2, 3, 4}, {"F", "i", "r", "e", "f", "o", "x"}
Menjawab
Menjawab. 1

Karena

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_10 objek adalah kumpulan nilai unik, itu tidak akan memungkinkan nilai duplikat dalam koleksi. Pada saat yang sama, ini adalah struktur data yang peka terhadap huruf besar-kecil


21. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_72

  • 1. BENAR
  • 2. PALSU
Menjawab
Menjawab. 2

JavaScript mengikuti standar spesifikasi IEEE 754. Sesuai spesifikasi ini, NaN tidak pernah sama untuk angka floating-point


22. What is the output of below code

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_73

  • 1. 4
  • 2. NaN
  • 3. Kesalahan sintaks
  • 4. -1
Menjawab
Menjawab. 4

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
_21 menggunakan operator kesetaraan yang ketat(===) secara internal dan
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
94 dievaluasi menjadi false. Karena indexOf tidak akan dapat menemukan NaN di dalam array, ia selalu mengembalikan -1. Tetapi Anda dapat menggunakan metode
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
95 untuk mengetahui indeks NaN dalam array atau Anda dapat menggunakan
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
96 untuk memeriksa apakah NaN ada dalam array atau tidak

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_74


23. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_75

  • 1. 1, [2, 3, 4, 5]
  • 2. 1, {2, 3, 4, 5}
  • 3. Kesalahan sintaks
  • 4. 1, [2, 3, 4]
Menjawab
Menjawab. 3

Saat menggunakan parameter istirahat, tanda koma tidak diperbolehkan dan akan memunculkan SyntaxError. Jika Anda menghapus tanda koma maka ini akan menampilkan jawaban pertama

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_76


25. What is the output of below code

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_77

  • 1: Promise {: 10}
  • 2. 10
  • 3. Kesalahan sintaks
  • 4: Promise {: 10}
Menjawab
Menjawab. 1

Fungsi asinkron selalu mengembalikan janji. Tetapi bahkan jika nilai kembalian dari fungsi async bukan janji secara eksplisit, itu akan dibungkus secara implisit dengan janji. Fungsi async di atas setara dengan ekspresi di bawah ini,

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_78


26. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_79

  • 1: Promise {: 10}
  • 2. 10
  • 3. Kesalahan sintaks
  • 4: Promise {: undefined}
Menjawab
Menjawab. 4

Ekspresi menunggu mengembalikan nilai 10 dengan resolusi janji dan kode setelah setiap ekspresi menunggu dapat dianggap ada dalam panggilan balik

function func() {};

new func(x, y, z);
72. Dalam hal ini, tidak ada ekspresi pengembalian di akhir fungsi. Hence, the default return value of
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
80 is returned as the resolution of the promise. Fungsi async di atas setara dengan ekspresi di bawah ini,

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_80


27. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_81

  • 1. Kesalahan sintaks
  • 2. 1, 2, 3, 4
  • 3. 4, 4, 4, 4
  • 4. 4, 3, 2, 1
Menjawab
Menjawab. 1

Meskipun "processArray" adalah fungsi asinkron, fungsi anonim yang kami gunakan untuk

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
99 bersifat sinkron. Jika Anda menggunakan await di dalam fungsi sinkron maka itu akan memunculkan kesalahan sintaksis


28. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_82

  • 1. 1 2 3 5 dan Proses selesai
  • 2. 5 5 5 5 and Process completed
  • 3. Proses selesai. dan 5 5 5 5
  • 4. Proses selesai. dan 1 2 3 5
Menjawab
Menjawab. 4

Metode forEach tidak akan menunggu sampai semua item selesai tetapi hanya menjalankan tugas dan melanjutkan. Oleh karena itu, pernyataan terakhir ditampilkan terlebih dahulu diikuti dengan urutan resolusi janji

Tapi Anda mengontrol urutan array menggunakan for. lingkaran,

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_83


29. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_84

  • 1. Set(4) {"+0", "-0", NaN, tidak terdefinisi}
  • 2. Set(3) {"+0", NaN, tidak terdefinisi}
  • 3. Set(5) {"+0", "-0", NaN, tidak terdefinisi, NaN}
  • 4. Set(4) {"+0", NaN, tidak terdefinisi, NaN}
Menjawab
Menjawab. 1

Set memiliki sedikit pengecualian dari pemeriksaan kesetaraan,

  1. All NaN values are equal
  2. Baik +0 dan -0 dianggap sebagai nilai yang berbeda

30. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_85

  • 1. betul betul
  • 2. benar salah
  • 3. salah benar
  • 4. palsu, salah
Menjawab
Menjawab. 3

Simbol mengikuti konvensi di bawah ini,

  1. Setiap nilai simbol yang dikembalikan dari Symbol() unik terlepas dari string opsional
  2. var object = new (function () {
      this.name = "Sudheer";
    })();
    _00 fungsi membuat simbol dalam daftar registri simbol global. Tapi itu tidak selalu membuat simbol baru pada setiap panggilan, itu memeriksa terlebih dahulu apakah simbol dengan kunci yang diberikan sudah ada di registri dan mengembalikan simbol jika ditemukan. Kalau tidak, simbol baru dibuat di registri

Catatan. Deskripsi simbol hanya berguna untuk keperluan debugging


31. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_86

  • 1. Kesalahan sintaks
  • 2. satu
  • 3. Simbol('satu')
  • 4. Simbol
Menjawab
Menjawab. 1

var object = new (function () {
  this.name = "Sudheer";
})();
_01 hanyalah fungsi standar dan bukan konstruktor objek (tidak seperti primitif lainnya Boolean baru, String baru, dan Angka baru). Jadi jika Anda mencoba memanggilnya dengan operator baru akan menghasilkan TypeError


32. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_87

  • 1. Kesalahan sintaks
  • 2. Ini bukan string. , Ini bukan angka
  • 3. Ini bukan string. , Ini adalah angka
  • 4. Ini adalah string. , Ini adalah angka
Menjawab
Menjawab. 4

Nilai pengembalian

var object = new (function () {
  this.name = "Sudheer";
})();
02 atau
var object = new (function () {
  this.name = "Sudheer";
})();
03 selalu merupakan nilai kebenaran (baik "angka" atau "string"). Itu. operator beroperasi pada
var object = new (function () {
  this.name = "Sudheer";
})();
02 atau
var object = new (function () {
  this.name = "Sudheer";
})();
03, mengubahnya menjadi nilai boolean. Karena nilai
var object = new (function () {
  this.name = "Sudheer";
})();
06 dan
var object = new (function () {
  this.name = "Sudheer";
})();
07 salah, kondisi if gagal, dan kontrol beralih ke blok else

Untuk membuat. operator beroperasi pada persamaan persamaan, seseorang perlu menambahkan tanda kurung

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_88

Atau cukup gunakan operator ketidaksetaraan

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_89


33. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_90

  • 1. {"MyArray". ['satu', tidak terdefinisi, {}, Simbol]}, {}
  • 2. {"MyArray". ['satu', null,null,null]}, {}
  • 3. {"MyArray". ['satu', null,null,null]}, "{ [Simbol. untuk satu')]. 'satu' }, [Simbol. untuk satu')]"
  • 4. {"MyArray". ['satu', tidak terdefinisi, function(){}, Symbol('')]}, {}
Menjawab
Menjawab. 2

Simbol memiliki batasan di bawah ini,

  1. Undefined, Functions, dan Symbols bukan nilai JSON yang valid. Jadi nilai-nilai itu dihilangkan (dalam sebuah objek) atau diubah menjadi nol (dalam sebuah array). Oleh karena itu, ia mengembalikan nilai null untuk larik nilai
  2. Semua properti dengan kunci Simbol akan diabaikan sepenuhnya. Hence it returns an empty object({})

34. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_91

  • 1. A A
  • 2. A, B
Menjawab
Menjawab. 2

Menggunakan konstruktor,

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
48 merujuk ke konstruktor (menunjuk ke definisi kelas dari kelas yang diinisialisasi) yang langsung dipanggil oleh new. Ini juga berlaku untuk kasus jika konstruktor berada di kelas induk dan didelegasikan dari konstruktor anak


35. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_92

  • 1. 1, [2, 3], 4
  • 2. 1, [2, 3, 4], tidak terdefinisi
  • 3. 1, [2], 3
  • 4. Kesalahan sintaks
Menjawab
Menjawab. 4

Itu melempar kesalahan sintaksis karena elemen lainnya tidak boleh memiliki tanda koma. Anda harus selalu mempertimbangkan untuk menggunakan operator istirahat sebagai elemen terakhir


36. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_93

  • 1. 30, 20
  • 2. 10, 20
  • 3. 10, tidak ditentukan
  • 4. 30, tidak ditentukan
Menjawab
Menjawab. 1

Properti objek mengikuti aturan di bawah ini,

  1. Properti objek dapat diambil dan ditugaskan ke variabel dengan nama yang berbeda
  2. Properti menetapkan nilai default saat nilai yang diambil adalah
    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    
    var object = new Person("Sudheer");
    80

37. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_94

  • 1. 200
  • 2. Kesalahan
  • 3. belum diartikan
  • 4. 0
Menjawab
Menjawab. 2

Jika Anda mengabaikan penugasan sisi kanan untuk objek perusak, fungsi akan mencari setidaknya satu argumen untuk diberikan saat dipanggil. Kalau tidak, Anda akan menerima kesalahan

var object = new (function () {
  this.name = "Sudheer";
})();
_10 seperti yang disebutkan di atas

Anda dapat menghindari kesalahan dengan salah satu dari perubahan di bawah ini,

  1. Lewati setidaknya objek kosong

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_95

  1. Tetapkan objek kosong default

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_96


38. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_97

  • 1. tom
  • 2. Kesalahan
  • 3. belum diartikan
  • 4. Yohanes
Menjawab
Menjawab. 1

Dimungkinkan untuk menggabungkan penghancuran Array dan Objek. Dalam hal ini, elemen ketiga dalam array props diakses terlebih dahulu diikuti oleh properti nama dalam objek


39. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_98

  • 1. angka, tidak terdefinisi, string, objek
  • 2. tidak terdefinisi, tidak terdefinisi, string, objek
  • 3. angka, angka, string, objek
  • 4. angka, angka, angka, angka
Menjawab
Menjawab. 3

Jika argumen fungsi diatur secara implisit (tidak meneruskan argumen) atau secara eksplisit menjadi tidak terdefinisi, nilai argumen adalah parameter default. Sedangkan untuk nilai palsu lainnya ('' atau null), nilai argumen diteruskan sebagai parameter

Oleh karena itu, hasil pemanggilan fungsi dikategorikan sebagai berikut,

  1. Dua fungsi pertama memanggil jenis nomor log karena jenis nilai default adalah nomor
  2. Jenis nilai '' dan null masing-masing adalah tipe string dan objek

40. Apa output dari kode di bawah ini

function Person() {}
Person.prototype.name = "Sudheer";
var object = new Person();
_99

  • 1. ['Jeruk'], ['Jeruk', 'Apel']
  • 2. ['Oranye'], ['Apel']
Menjawab
Menjawab. 2

Karena argumen default dievaluasi pada waktu panggilan, objek baru dibuat setiap kali fungsi dipanggil. Jadi dalam hal ini, array baru dibuat dan sebuah elemen didorong ke array kosong default


41. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_00

  • 1. Kesalahan sintaks
  • 2. ['Halo', 'John', 'Halo John'], ['Halo', 'John', 'Selamat pagi. ']
Menjawab
Menjawab. 2

Karena parameter yang ditentukan sebelumnya tersedia untuk parameter default selanjutnya, cuplikan kode ini tidak menimbulkan kesalahan apa pun


42. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_01

  • 1. ReferensiKesalahan
  • 2. Batin
Menjawab
Menjawab. 1

Fungsi dan variabel yang dideklarasikan dalam badan fungsi tidak dapat dirujuk dari penginisialisasi parameter nilai default. Jika Anda masih mencoba untuk mengakses, itu melempar ReferenceError(i. e,

var object = new (function () {
  this.name = "Sudheer";
})();
_11 tidak ditentukan)


43. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_02

  • 1. [3, 4, 5], tidak ditentukan
  • 2. Kesalahan sintaks
  • 3. [3, 4, 5], []
  • 4. [3, 4, 5], [belum ditentukan]
Menjawab
Menjawab. 3

Parameter rest digunakan untuk menampung parameter yang tersisa dari suatu fungsi dan menjadi array kosong jika argumen tidak diberikan


44. What is the output of below code

function func() {};

new func(x, y, z);
_03

  • 1. ['kunci', 'nilai']
  • 2. TypeError
  • 3. []
  • 4. ['kunci']
Menjawab
Menjawab. 2

Sintaks spread hanya dapat diterapkan pada objek yang dapat diubah. Secara default, Objek tidak dapat diubah, tetapi menjadi dapat diubah saat digunakan dalam Array, atau dengan fungsi berulang seperti

var object = new (function () {
  this.name = "Sudheer";
})();
12. Jika Anda masih mencoba melakukannya, itu masih melempar
var object = new (function () {
  this.name = "Sudheer";
})();
13


45. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_04

  • 1. 1
  • 2. belum diartikan
  • 3. Kesalahan sintaks
  • 4. TypeError
Menjawab
Menjawab. 4

Generator bukan tipe yang dapat dibangun. Tetapi jika Anda tetap melakukannya, akan ada pesan kesalahan yang mengatakan "TypeError. myGenFunc bukan konstruktor"


46. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
05

  • 1. { nilai. 1, selesai. salah }, { nilai. 2, selesai. nilai asli. tidak ditentukan, selesai. BENAR }
  • 2. { nilai. 1, selesai. salah }, { nilai. 2, selesai. salah }, { nilai. tidak ditentukan, selesai. BENAR }
  • 3. { nilai. 1, selesai. salah }, { nilai. 2, selesai. nilai asli. 3, done. BENAR }
  • 4. { nilai. 1, selesai. salah }, { nilai. 2, selesai. salah }, { nilai. 3, selesai. BENAR }
Menjawab
Menjawab. 1

Pernyataan pengembalian dalam fungsi generator akan membuat generator selesai. Jika suatu nilai dikembalikan, itu akan ditetapkan sebagai properti nilai dari objek dan properti done menjadi true. Saat generator selesai, panggilan next() berikutnya mengembalikan objek dari formulir ini.

var object = new (function () {
  this.name = "Sudheer";
})();
_14


47. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_06

  • 1. 1,2,3 dan 1,2,3
  • 2. 1,2,3 dan 4,5,6
  • 3. 1 dan 1
  • 4. 1
Menjawab
Menjawab. 4

Generator tidak boleh digunakan kembali setelah iterator ditutup. Saya. e, Setelah keluar dari loop (setelah selesai atau menggunakan break & return), generator ditutup dan mencoba mengulanginya lagi tidak menghasilkan hasil lagi. Karenanya, loop kedua tidak mencetak nilai apa pun


48. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_07

  • 1. Kesalahan sintaks
  • 2. 38
Menjawab
Menjawab. 1

Jika Anda menggunakan nomor yang tidak valid (di luar rentang 0-7) dalam literal oktal, JavaScript akan memunculkan SyntaxError. Di ES5, ini memperlakukan literal oktal sebagai angka desimal


49. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_08

  • 1. 100
  • 2. ReferensiKesalahan
Menjawab
Menjawab. 2

Unlike function declarations, class declarations are not hoisted. i. e, First You need to declare your class and then access it, otherwise it will throw a ReferenceError "Uncaught ReferenceError. Square is not defined"

Note. Class expressions also applies to the same hoisting restrictions of class declarations


50. What is the output of below code

function func() {};

new func(x, y, z);
09

  • 1. undefined, undefined
  • 2. Person, Person
  • 3. Kesalahan sintaks
  • 4. Window, Window
Menjawab
Menjawab. 4

When a regular or prototype method is called without a value for this, the methods return an initial this value if the value is not undefined. Otherwise global window object will be returned. In our case, the initial

function func() {};

new func(x, y, z);
48 value is undefined so both methods return window objects


51. What is the output of below code

function func() {};

new func(x, y, z);
10

  • 1. Kesalahan sintaks
  • 2. BMW vehicle started, BMW car started
  • 3. Mobil BMW dinyalakan, kendaraan BMW dinyalakan
  • 4. Mobil BMW dinyalakan, mobil BMW dinyalakan
Menjawab
Menjawab. 3

Kata kunci super digunakan untuk memanggil metode superclass. Tidak seperti bahasa lain, doa super tidak perlu menjadi pernyataan pertama. Saya. e, Pernyataan akan dieksekusi dalam urutan kode yang sama


52. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_11

  • 1. 30
  • 2. 25
  • 3. TypeError yang tidak tertangkap
  • 4. Kesalahan sintaks
Menjawab
Menjawab. 2

Meskipun kami menggunakan variabel konstanta, isinya adalah objek dan konten objek (mis. g properti) dapat diubah. Oleh karena itu, perubahan akan berlaku dalam kasus ini


53. Apa output dari kode di bawah ini

function func() {};

new func(x, y, z);
_12

  • 1. false
  • 2. BENAR
Menjawab
Menjawab. 2

Emoji adalah unicode dan unicode untuk simbol senyum adalah "U+1F642". The unicode comparision of same emojies is equivalent to string comparison. Oleh karena itu, output selalu benar


54. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_13

  • 1. rangkaian
  • 2. boolean
  • 3. NaN
  • 4. nomor
Menjawab
Menjawab. 1

Operator typeof pada primitif apa pun mengembalikan nilai string. Jadi, bahkan jika Anda menerapkan rangkaian operator typeof pada nilai kembalian, itu selalu berupa string


55. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_14

  • 1. Jika
  • 2. Kalau tidak
  • 3. NaN
  • 4. Kesalahan sintaks
Menjawab
Menjawab. 1
  1. Jenis operator pada Nomor baru selalu mengembalikan objek. Saya. e, jenis Angka baru(0) --> objek
  2. Objects are always truthy in if block

Karenanya blok kode di atas selalu masuk ke bagian if


55. Apa output dari kode di bawah ini dalam mode tidak ketat?

function func() {};

new func(x, y, z);
_15

  • 1. ""
  • 2. Kesalahan
  • 3. Yohanes
  • 4. Belum diartikan
Menjawab
Menjawab. 4

Ini mengembalikan undefined untuk mode non-ketat dan mengembalikan Error untuk mode ketat. Dalam mode non-ketat, objek pembungkus akan dibuat dan mendapatkan properti yang disebutkan. Tetapi objek tersebut menghilang setelah mengakses properti di baris berikutnya


56. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_16

  • 1. 11, 10
  • 2. 11, 11
  • 3. 10, 11
  • 4. 10, 10
Menjawab
Menjawab. 1

11 dan 10 dicatat ke konsol

innerFunc adalah penutupan yang menangkap variabel hitungan dari outerscope. Saya. e, 10. Tetapi kondisional memiliki variabel lokal lain

var object = new (function () {
  this.name = "Sudheer";
})();
16 yang menimpa variabel ourter
var object = new (function () {
  this.name = "Sudheer";
})();
16. Jadi konsol pertama. log menampilkan nilai 11. Sedangkan konsol kedua. log log 10 dengan menangkap variabel count dari outerscope


57. Apa output dari kode di bawah ini?

  • 1. menghibur. log(benar && 'hai');
  • 2. menghibur. log(benar && 'hai' && 1);
  • 3. menghibur. log(benar && '' && 0);
Menjawab
  • 1. Hai
  • 2. 1
  • 3. ''

Alasan. Operator mengembalikan nilai operan palsu pertama yang ditemui saat mengevaluasi dari kiri ke kanan, atau nilai operan terakhir jika semuanya benar

Catatan. Di bawah nilai ini dianggap nilai palsu

  • 1. 0
  • 2. ''
  • 3. batal
  • 4. belum diartikan
  • 5. NAN

58. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_17

  • 1. false
  • 2. Kesalahan
  • 3. BENAR
Menjawab
Menjawab. 3

Array memiliki implementasi sendiri dari metode

var object = new (function () {
  this.name = "Sudheer";
})();
_18 yang mengembalikan daftar elemen yang dipisahkan koma. Jadi cuplikan kode di atas mengembalikan nilai true. Untuk menghindari konversi tipe array, kita harus menggunakan === untuk perbandingan


59. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_18

  • 1. Selamat pagi
  • 2. getMessage bukan fungsi
  • 3. getMessage tidak ditentukan
  • 4. Belum diartikan
Menjawab
Menjawab. 2

Mengangkat akan memindahkan variabel dan fungsi menjadi top of scope. Meskipun getMessage adalah fungsi panah, fungsi di atas akan dianggap sebagai variabel karena deklarasi atau penugasan variabelnya. Jadi variabel akan memiliki nilai yang tidak ditentukan dalam fase memori dan melontarkan kesalahan '

var object = new (function () {
  this.name = "Sudheer";
})();
19 bukan fungsi' pada fase eksekusi kode


60. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
19

  • 1. program selesai
  • 2. Tidak dapat memprediksi pesanan
  • 3. program selesai, janji selesai
  • 4. janji selesai, program selesai
Menjawab
Menjawab. 3

Meskipun sebuah janji diselesaikan dengan segera, itu tidak akan segera dieksekusi karena itu. lalu/tangkap/akhirnya penangan atau panggilan balik (alias tugas) didorong ke antrian. Setiap kali mesin JavaScript bebas dari program saat ini, ia menarik tugas dari antrean dan menjalankannya. Inilah alasan mengapa pernyataan terakhir dicetak terlebih dahulu sebelum log penangan janji

Catatan. Kami menyebut antrian di atas sebagai "Antrian MikroTask"


61. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_20

  • 1.
    var object = new (function () {
      this.name = "Sudheer";
    })();
    20, lalu cetak
    var object = new (function () {
      this.name = "Sudheer";
    })();
    21 di baris baru, dan terakhir cetak
    var object = new (function () {
      this.name = "Sudheer";
    })();
    22 sebagai baris berikutnya
  • 2.
    var object = new (function () {
      this.name = "Sudheer";
    })();
    20, lalu cetak
    var object = new (function () {
      this.name = "Sudheer";
    })();
    21 di baris pertama, dan cetak
    var object = new (function () {
      this.name = "Sudheer";
    })();
    22 sebagai baris berikutnya
  • 3. Kesalahan titik koma tidak ada
  • 4. Tidak dapat membaca properti yang tidak terdefinisi
Menjawab
Menjawab. 4

Ketika JavaScript menemukan jeda baris tanpa titik koma, pengurai JavaScript akan secara otomatis menambahkan titik koma berdasarkan seperangkat aturan yang disebut

var object = new (function () {
  this.name = "Sudheer";
})();
26 yang menentukan apakah jeda baris sebagai akhir pernyataan atau tidak menyisipkan titik koma. Tapi itu tidak mengasumsikan titik koma sebelum tanda kurung siku [. ]. So the first two lines considered as a single statement as below

function func() {};

new func(x, y, z);
_21

Oleh karena itu, tidak akan ada properti yang tidak dapat dibaca dari kesalahan yang tidak terdefinisi saat menerapkan tanda kurung siku pada fungsi log


62. Tulis fungsi yang mengembalikan warna HEX acak

Solusi 1 (Generasi berulang)

function func() {};

new func(x, y, z);
_22

Solusi 2 (Satu baris)

function func() {};

new func(x, y, z);
_23


63. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_24

  • 1. dari
  • 2. Kesalahan sintaks. Token tak terduga dari
  • 3. Kesalahan sintaks. Pengenal 'dari' telah dideklarasikan
  • 4. ReferensiKesalahan. dari tidak didefinisikan
Menjawab
Menjawab. 1

In JavaScript,

var object = new (function () {
  this.name = "Sudheer";
})();
27 is not considered as a reserved keyword. Jadi deklarasi variabel dengan
var object = new (function () {
  this.name = "Sudheer";
})();
_27 diterima dan mencetak nilai array
var object = new (function () {
  this.name = "Sudheer";
})();
27 menggunakan for. dari lingkaran

Tetapi jika Anda menggunakan kata kunci yang dipesan seperti

var object = new (function () {
  this.name = "Sudheer";
})();
30 maka akan ada kesalahan sintaks yang mengatakan
var object = new (function () {
  this.name = "Sudheer";
})();
31,

function func() {};

new func(x, y, z);
_25


64. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_26

  • 1. [11, 18, 23, 25, 31, 33, 200]
  • 2. [11, 18, 200, 23, 25, 31, 33]
  • 3. [11, 25, 31, 23, 33, 18, 200]
  • 4. Tidak dapat mengurutkan angka
Menjawab
Menjawab. 2

Secara default, metode pengurutan mengurutkan elemen menurut abjad. Ini karena elemen dikonversi menjadi string dan string dibandingkan dalam urutan unit kode UTF-16. Karenanya, Anda akan melihat angka-angka di atas tidak diurutkan seperti yang diharapkan. Untuk mengurutkan secara numerik, berikan saja fungsi pembanding yang menangani pengurutan numerik

function func() {};

new func(x, y, z);
_27

Catatan. Sort() metode mengubah array asli


65. Apa urutan output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_28

  • 1. 1, 2, 3
  • 2. 1, 3, 2
  • 3. 3, 1, 2
  • 4. 3, 2, 1
Menjawab
Menjawab. 4

Ketika mesin JavaScript mem-parsing kode di atas, dua pernyataan pertama bersifat asinkron yang akan dieksekusi kemudian dan pernyataan ketiga adalah pernyataan sinkron yang akan dipindahkan ke callstack, dieksekusi dan mencetak angka 3 di konsol. Selanjutnya, Promise adalah native di ES6 dan akan dipindahkan ke antrean Job yang memiliki prioritas lebih tinggi daripada antrean panggilan balik dalam urutan eksekusi. Akhirnya, karena setTimeout adalah bagian dari WebAPI, fungsi panggilan balik dipindahkan ke antrean panggilan balik dan dijalankan. Oleh karena itu, Anda akan melihat nomor 2 dicetak terlebih dahulu diikuti oleh 1


66. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_29

  • 1. Yohanes, Halo Yohanes. Selamat datang
  • 2. undefined, Halo John, Selamat datang
  • 3. Kesalahan referensi. nama tidak ditentukan, kesalahan Referensi. pesan tidak ditentukan
  • 4. tidak terdefinisi, kesalahan Referensi. message is not defined
Menjawab
Menjawab. 4

IIFE (Ekspresi Fungsi Segera Dipanggil) sama seperti ekspresi fungsi lainnya yang tidak akan diangkat. Oleh karena itu, akan ada kesalahan referensi untuk panggilan pesan. Perilaku akan sama dengan ekspresi fungsi message1 di bawah ini,

function func() {};

new func(x, y, z);
_30


67. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_31

  • 1. Kesalahan referensi. pesan tidak ditentukan
  • 2. Halo
  • 3. Selamat tinggal
  • 4. Mengkompilasi kesalahan waktu
Menjawab
Menjawab. 3

Sebagai bagian dari pengangkatan, awalnya Mesin JavaScript atau kompiler akan menyimpan fungsi pertama di memori heap tetapi kemudian menulis ulang atau mengganti dengan konten fungsi yang didefinisikan ulang


68. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_32

  • 1. New York, Singapura
  • 2. NewYork, NewYork
  • 3. tidak ditentukan, Singapura
  • 4. Singapura, Singapura
Menjawab
Menjawab. 3

Due to hositing feature, the variables declared with

function func() {};

new func(x, y, z);
53 will have
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
80 value in the creation phase so the outer variable
var object = new (function () {
  this.name = "Sudheer";
})();
34 will get same
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
80 value. Tetapi setelah beberapa baris kode, mesin JavaScript menemukan panggilan fungsi baru (
var object = new (function () {
  this.name = "Sudheer";
})();
36) untuk memperbarui kota saat ini dengan deklarasi ulang
function func() {};

new func(x, y, z);
53. Karena setiap pemanggilan fungsi akan membuat konteks eksekusi baru, variabel yang sama akan memiliki nilai
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
80 sebelum deklarasi dan nilai baru(
var object = new (function () {
  this.name = "Sudheer";
})();
39) setelah deklarasi. Oleh karena itu, nilai
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
80 cetak terlebih dahulu diikuti dengan nilai baru
var object = new (function () {
  this.name = "Sudheer";
})();
39 dalam fase eksekusi


69. Apa output dari kode di bawah ini secara berurutan?

function func() {};

new func(x, y, z);
_33

  • 1. tidak terdefinisi, pertama, default
  • 2. bawaan, bawaan, bawaan
  • 3. pertama, pertama, bawaan
  • 4. tidak terdefinisi, tidak terdefinisi, tidak terdefinisi
Menjawab
Menjawab. 1

Setiap konteks (global atau fungsional) memiliki lingkungan variabelnya sendiri dan tumpukan panggilan variabel dalam urutan LIFO. Jadi Anda dapat melihat nilai variabel pesan dari fungsi kedua, pertama dalam urutan diikuti oleh nilai variabel pesan konteks global di bagian akhir


70. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_34

  • 1. functionOne tidak didefinisikan
  • 2. functionOne
  • 3. menghibur. log("functionOne")
  • 4. belum diartikan
Menjawab
Menjawab. 1

Panggilan fungsi

var object = new (function () {
  this.name = "Sudheer";
})();
42 tidak akan menjadi bagian dari rantai lingkup dan memiliki konteks eksekusi sendiri dengan lingkungan variabel terlampir. Saya. e, Itu tidak akan diakses dari konteks global. Hence, there will be an error while invoking the function as
var object = new (function () {
  this.name = "Sudheer";
})();
43


71. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_35

  • 1. {nama. "Yohanes", makan. f}, {nama. "Yohanes", makan. F}
  • 2. Jendela {. }, Jendela {. }
  • 3. {name. "John", eat. f}, tidak terdefinisi
  • 4. {nama. "Yohanes", makan. f}, Jendela {. }
Menjawab
Menjawab. 4

function func() {};

new func(x, y, z);
48 kata kunci adalah ruang lingkup dinamis tetapi tidak ruang lingkup leksikal. In other words, it doesn't matter where
function func() {};

new func(x, y, z);
48 has been written but how it has been invoked really matter. Dalam cuplikan kode di atas, objek
var object = new (function () {
  this.name = "Sudheer";
})();
_46 memanggil fungsi
var object = new (function () {
  this.name = "Sudheer";
})();
47 sehingga kata kunci
function func() {};

new func(x, y, z);
48 mengacu pada objek
var object = new (function () {
  this.name = "Sudheer";
})();
46 tetapi
var object = new (function () {
  this.name = "Sudheer";
})();
50 telah dipanggil oleh fungsi
var object = new (function () {
  this.name = "Sudheer";
})();
47 dan
function func() {};

new func(x, y, z);
48 akan memiliki objek
var object = new (function () {
  this.name = "Sudheer";
})();
_53 default

Pit fall di atas diperbaiki dengan tiga cara,

  1. Di ES6, fungsi panah akan menjadikan kata kunci ________5______48 sebagai cakupan leksikal. Karena objek di sekitar objek
    function func() {};
    
    new func(x, y, z);
    _48 adalah objek
    var object = new (function () {
      this.name = "Sudheer";
    })();
    46, fungsi
    var object = new (function () {
      this.name = "Sudheer";
    })();
    50 akan berisi objek
    var object = new (function () {
      this.name = "Sudheer";
    })();
    46 untuk objek
    function func() {};
    
    new func(x, y, z);
    48

function func() {};

new func(x, y, z);
36

The next two solutions have been used before ES6 introduced

  1. It is possible create a reference of
    function func() {};
    
    new func(x, y, z);
    48 into a separate variable and use that new variable inplace of
    function func() {};
    
    new func(x, y, z);
    48 keyword inside
    var object = new (function () {
      this.name = "Sudheer";
    })();
    50 function. Ini adalah praktik umum di jQuery dan AngularJS sebelum ES6 diperkenalkan

function func() {};

new func(x, y, z);
_37

  1. Fungsi
    var object = new (function () {
      this.name = "Sudheer";
    })();
    50 dapat mengikat secara eksplisit dengan kata kunci
    function func() {};
    
    new func(x, y, z);
    48 yang merujuk objek
    var object = new (function () {
      this.name = "Sudheer";
    })();
    53

function func() {};

new func(x, y, z);
_38


72. What is the output of below code?

function func() {};

new func(x, y, z);
_39

  • 1. Jello World. , John Smith
  • 2. Jello World. , Yohanes
  • 3. Halo Dunia. , John Smith
  • 4. Hello World. , Yohanes
Menjawab
Menjawab. 3

In JavaScript, primitives are immutable i. e. there is no way to change a primitive value once it gets created. So when you try to update the string's first character, there is no change in the string value and prints the same initial value

var object = new (function () {
  this.name = "Sudheer";
})();
66. Whereas in the later example, the concatenated value is re-assigned to the same variable which will result into creation of new memory block with the reference pointing to
var object = new (function () {
  this.name = "Sudheer";
})();
67 value and the old memory block value(
var object = new (function () {
  this.name = "Sudheer";
})();
68) will be garbage collected


73. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_40

  • 1. BENAR
  • 2. PALSU
  • 3. Mengkompilasi kesalahan waktu
Menjawab
Menjawab. 2

In JavaScript, the variables such as objects, arrays and functions comes under pass by reference. Saat Anda mencoba membandingkan dua objek dengan konten yang sama, itu akan membandingkan alamat memori atau referensi dari variabel tersebut. Variabel-variabel ini selalu membuat blok memori terpisah sehingga perbandingannya selalu akan mengembalikan nilai palsu


74. What is the output of below code?

function func() {};

new func(x, y, z);
_41

  • 1. Belum diartikan
  • 2. Reference error
  • 3. Hello, Good morning
  • 4. batal
Menjawab
Menjawab. 3

The variable

var object = new (function () {
  this.name = "Sudheer";
})();
69 is still treated as closure(since it has been used in inner function) eventhough it has been declared after setTimeout function. The function with in setTimeout function will be sent to WebAPI and the variable declaration executed with in 5 seconds with the assigned value. Karenanya, teks yang dideklarasikan untuk variabel akan ditampilkan


75. What is the output of below code?

function func() {};

new func(x, y, z);
_42

  • 1. PALSU
  • 2. BENAR
Menjawab
Menjawab. 1

Eventhough both variables

class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
62 and
// Create a new instance using function prototype.
var newInstance = Object.create(func.prototype)

// Call the function
var result = func.call(newInstance, x, y, z),

// If the result is a non-null object then use it otherwise just use the new instance.
console.log(result && typeof result === 'object' ? result : newInstance);
18 refer a number value, the first declaration is based on constructor function and the type of the variable is going to be
var object = new (function () {
  this.name = "Sudheer";
})();
72 type. Sedangkan deklarasi kedua adalah penugasan primitif dengan angka dan tipenya adalah tipe
var object = new (function () {
  this.name = "Sudheer";
})();
73. Oleh karena itu, operator kesetaraan
var object = new (function () {
  this.name = "Sudheer";
})();
_74 akan menampilkan nilai
class Person {
  constructor(name) {
    this.name = name;
  }
}

var object = new Person("Sudheer");
08


76. Apa jenis fungsi di bawah ini?

function func() {};

new func(x, y, z);
_43

  • 1. Fungsi murni
  • 2. Fungsi tidak murni
Menjawab
Menjawab. 2

Meskipun fungsi di atas mengembalikan hasil yang sama untuk argumen (input) yang sama yang diteruskan dalam fungsi, pernyataan

var object = new (function () {
  this.name = "Sudheer";
})();
76 menyebabkan fungsi memiliki efek samping karena memengaruhi status kode eksternal. Saya. e, status objek
var object = new (function () {
  this.name = "Sudheer";
})();
_77 dan bergantung padanya untuk melakukan pekerjaan. Oleh karena itu, fungsi di atas dianggap sebagai fungsi tidak murni


77. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_44

  • 1. [{status. "terisi penuh", nilai. tidak terdefinisi}, {status. "ditolak", alasan. belum diartikan}]
  • 2. [{status. "terisi penuh", nilai. undefined}, Tidak tertangkap (berjanji)]
  • 3. Tidak tertangkap (dalam janji)
  • 4. [Tidak tertangkap(berjanji), Tidak tertangkap(berjanji)]
Menjawab
Menjawab. 2

Janji-janji di atas diselesaikan pada saat yang sama tetapi salah satunya diselesaikan dan yang lainnya ditolak. Ketika Anda menggunakan metode

var object = new (function () {
  this.name = "Sudheer";
})();
_78 pada janji-janji ini, hasilnya akan disingkat dengan melemparkan kesalahan karena penolakan pada janji kedua. Tetapi Jika Anda menggunakan metode
var object = new (function () {
  this.name = "Sudheer";
})();
_79 maka hasil dari kedua janji tersebut akan dikembalikan terlepas dari status janji yang diselesaikan atau ditolak tanpa menimbulkan kesalahan apa pun

function func() {};

new func(x, y, z);
_45


78. Apa output dari kode di bawah ini?

function func() {};

new func(x, y, z);
_46

  • 1. coba blokir, Error. Pengecualian dilemparkan
  • 2. Kesalahan. Pengecualian dilemparkan
  • 3. coba blokir, Kesalahan Tidak Tertangkap. Pengecualian dilemparkan
  • 4. Kesalahan yang tidak tertangkap. Exception is thrown
Menjawab
Menjawab. 3

Jika Anda memasukkan metode

// Create a new instance using function prototype.
var newInstance = Object.create(func.prototype)

// Call the function
var result = func.call(newInstance, x, y, z),

// If the result is a non-null object then use it otherwise just use the new instance.
console.log(result && typeof result === 'object' ? result : newInstance);
76 dan
var object = new (function () {
  this.name = "Sudheer";
})();
81 di dalam klausa try dan pengecualian dilemparkan, klausa catch tidak akan menangkap salah satu dari mereka. Ini karena mencoba. pernyataan catch bekerja secara sinkron, dan fungsi dalam kode di atas dijalankan secara asinkron setelah jangka waktu tertentu. Karenanya, Anda akan melihat pengecualian runtime tanpa mengetahui kesalahannya. Untuk mengatasi masalah ini, Anda harus mencoba. tangkap blok di dalam fungsi seperti di bawah ini,

function func() {};

new func(x, y, z);
_47

Anda dapat menggunakan fungsi

var object = new (function () {
  this.name = "Sudheer";
})();
_82 dalam promise untuk menghindari masalah ini dengan kode asinkron


Penafian

Pertanyaan yang disediakan dalam repositori ini adalah ringkasan dari pertanyaan yang sering diajukan di banyak perusahaan. Kami tidak dapat menjamin bahwa pertanyaan-pertanyaan ini akan benar-benar ditanyakan selama proses wawancara Anda, Anda juga tidak boleh fokus untuk menghafal semuanya. Tujuan utamanya adalah agar Anda memahami apa yang mungkin ditanyakan oleh beberapa perusahaan — jangan berkecil hati jika Anda tidak mengetahui jawaban untuk semuanya ⁠— tidak apa-apa

Di mana saya bisa berlatih soal coding JavaScript?

Codedamn adalah platform pemrograman interaktif; . Ini menawarkan dua kursus untuk berlatih dan menguasai JavaScript. Salah satunya adalah 50 hari JavaScript. Anda akan mendapatkan satu pertanyaan setiap hari dan tidak perlu menunggu satu hari lagi untuk menyelesaikan pertanyaan kedua.

Bagaimana Anda berlatih pengkodean JavaScript?

5 Cara Terbaik untuk Mempelajari JavaScript dengan Cepat .
Situs Web dan Kursus Mandiri
Buku
Kamp Pelatihan Pengodean
Pertemuan dan Acara Jejaring
Memulai Proyek Anda Sendiri

Bagaimana saya bisa berlatih JavaScript setiap hari?

Cara Berlatih Javascript Online dan Dapatkan Pengalamannya .
Bangun Proyek Javascript. .
Meningkatkan Proyek yang Ada
Tantangan Kode Lengkap
Bergabunglah dengan Proyek Sumber Terbuka
Bergabunglah dengan Komunitas Pengkodean
Bagikan Perjalanan Belajar Javascript Anda dengan Orang Lain
Menulis Artikel Coding dan Berbagi Pengetahuan

Bagaimana cara berlatih JavaScript untuk wawancara?

Cara mempersiapkan wawancara JavaScript .
Langkah 1. Ketahui apa yang perlu Anda pelajari. Anda sudah tahu bahasa pemrograman apa yang akan Anda gunakan, jadi sekarang Anda perlu meneliti aspek apa dari bahasa itu yang akan diuji. .
Langkah 2. Membuat rencana. .
Langkah 3. Jangan lupakan wawancara perilaku