This programming language may be used to instruct a computer to perform a task.
Garbage collected: | Yes |
---|---|
Parameter passing methods: | By value |
Type strength: | Weak |
Type expression: | Implicit |
Type checking: | Dynamic |
See Also: |
If you know JavaScript, please write code for some of the tasks not implemented in JavaScript.
JavaScript is the name of Netscape Communications Corporation's implementation of the ECMAScript standard, a scripting language based on the concept of prototype-based programming. The language is best known for its use in websites (as client-side JavaScript), but is also used to enable scripting access to objects embedded in other applications.
Despite the name, JavaScript is only distantly related to the Java programming language, the main similarity being their common debt to the C syntax. Semantically, JavaScript syntax has far more in common with the Self programming language.
JavaScript is a registered trademark of Sun Microsystems, Inc. It was used under license for technology invented and implemented by Netscape Communications and current entities such as the Mozilla Foundation.
Major browsers have generally implemented the features of ECMASScript 5 (ES5), and have started to adopt elements of ES6. Updates to implementation of ES6 features are tabulated here: https://kangax.github.io/compat-table/es6/
Once largely confined to browser environments, and typically isolated from access to system resources, JavaScript (and particularly the cross-platform Node.js runtime environment) is now very widely used in server-side and application scripting environments, with full access to local file systems and other OS resources.
At the same time, mainly because of JavaScript's role in the web, there is a growing number of other languages which compile to JavaScript.
The inclusion of tail-call optimisation in the ES6 standard reflects increased interest in functional approaches to the composition of JavaScript code, expressed for example, in significant adoption of libraries like Underscore and Lodash. If ES6 tail-call optimisation is widely implemented by JavaScript engines (so far this has mainly been achieved only by Apple's Safari engine) it will make JavaScript a more efficient and more natural environment for coding in a functional idiom.
Citations[edit]
- Wikipedia:Javascript
- Node.js Event-driven I/O server-side JavaScript environment based on V8
- npm – Node.js Package Manager Claims to be the largest ecosystem of open source libraries in the world
- OS X JavaScript for Applications JavaScript as an OS X scripting language – supported by the Safari debugger
- Other JavaScript shells List maintained by Mozilla
- List of languages that compile to JS maintained on Github by Jeremy Ashenas – author of CoffeeScript, Underscore and Backbone
- Functional JavaScript – Michael Fogus, O'Reilly 2013
Subcategories
This category has the following 3 subcategories, out of 3 total.
Pages in category "JavaScript"
The following 616 pages are in this category, out of 616 total.
A
- A* search algorithm
- A+B
- Abbreviations, simple
- ABC Problem
- Abundant, deficient and perfect number classifications
- Accumulator factory
- Ackermann function
- Active object
- Add a variable to a class instance at runtime
- AKS test for primes
- Align columns
- Almost prime
- Amb
- Amicable pairs
- Anagrams
- Anagrams/Deranged anagrams
- Angle difference between two bearings
- Animate a pendulum
- Animation
- Anonymous recursion
- Apply a callback to an array
- Archimedean spiral
- Arithmetic evaluation
- Arithmetic-geometric mean
- Arithmetic/Complex
- Arithmetic/Integer
- Arithmetic/Rational
- Array concatenation
- Array length
- Arrays
- Aspect Oriented Programming
- Associative array/Creation
- Associative array/Iteration
- Audio Overlap Loop
- AudioAlarm
- Averages/Arithmetic mean
- Averages/Mean angle
- Averages/Mean time of day
- Averages/Median
- Averages/Mode
- Averages/Pythagorean means
- Averages/Root mean square
- Averages/Simple moving average
B
C
- Caesar cipher
- Calculating the value of e
- Call a function
- Call an object method
- Cantor set
- Cartesian product of two or more lists
- Case-sensitivity of identifiers
- Casting out nines
- Catalan numbers
- Catalan numbers/Pascal's triangle
- Catamorphism
- Chaos game
- Character codes
- Chat server
- Check that file exists
- Cheryl's Birthday
- Chinese zodiac
- Church Numerals
- Circles of given radius through two points
- Classes
- Closest-pair problem
- Closures/Value capture
- Collections
- Combinations
- Combinations with repetitions
- Comma quibbling
- Command-line arguments
- Comments
- Compare a list of strings
- Compound data type
- Concurrent computing
- Conditional structures
- Constrained random points on a circle
- Convert decimal number to rational
- Convert seconds to compound duration
- Conway's Game of Life
- Copy a string
- Count in factors
- Count in octal
- Count occurrences of a substring
- Count the coins
- Cramer's rule
- CRC-32
- Create a two-dimensional array at runtime
- Create an HTML table
- Create an object/Native demonstration
- CSV data manipulation
- CSV to HTML translation
- Cumulative standard deviation
- Currency
- Currying
D
- Date format
- Date manipulation
- Day of the week
- Deal cards for FreeCell
- Death Star
- Decision tables
- Deepcopy
- Define a primitive data type
- Delegates
- Delete a file
- Department Numbers
- Detect division by zero
- Determine if a string is numeric
- Digital root
- Dijkstra's algorithm
- Dinesman's multiple-dwelling problem
- Discordian date
- Distributed programming
- Diversity prediction theorem
- Dot product
- Doubly-linked list/Definition
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Doubly-linked list/Traversal
- Dragon curve
- Draw a clock
- Draw a cuboid
- Draw a rotating cube
- Draw a sphere
- Dutch national flag problem
- Dynamic variable names
E
- Echo server
- Egyptian division
- Empty program
- Empty string
- Enforced immutability
- Entropy
- Enumerations
- Environment variables
- Equilibrium index
- Ethiopian multiplication
- Euler method
- Euler's sum of powers conjecture
- Evaluate binomial coefficients
- Even or odd
- Events
- Evolutionary algorithm
- Exceptions
- Exceptions/Catch an exception thrown in a nested call
- Execute a system command
- Execute Brain****
- Execute HQ9+
- Execute SNUSP
- Exponentiation operator
- Extensible prime generator
F
- Factorial
- Factors of a Mersenne number
- Factors of an integer
- Fast Fourier transform
- Faulhaber's triangle
- Fibonacci n-step number sequences
- Fibonacci sequence
- Fibonacci word
- Fibonacci word/fractal
- File input/output
- File modification time
- File size
- Filter
- Find common directory path
- Find limit of recursion
- Find palindromic numbers in both binary and ternary bases
- Find the intersection of two lines
- Find the last Sunday of each month
- Find the missing permutation
- Finite state machine
- First-class functions
- Five weekends
- FizzBuzz
- Flatten a list
- Flipping bits game
- Flow-control structures
- Floyd's triangle
- Floyd-Warshall algorithm
- Forest fire
- Formatted numeric output
- Forward difference
- Four bit adder
- Fractal tree
- Fractran
- Function composition
- Function definition
- Function prototype
G
- Gamma function
- Gaussian elimination
- General FizzBuzz
- Generate Chess960 starting position
- Generate lower case ASCII alphabet
- Generator/Exponential
- Generic swap
- Geometric algebra
- Grayscale image
- Greatest common divisor
- Greatest element of a list
- Greatest subsequential sum
- Greyscale bars/Display
- Guess the number
- Guess the number/With feedback
- Guess the number/With feedback (player)
H
- Hailstone sequence
- Hamming numbers
- Handle a signal
- Happy numbers
- Harshad or Niven series
- Hash from two arrays
- Hash join
- Haversine formula
- Hello world/Graphical
- Hello world/Line printer
- Hello world/Newbie
- Hello world/Newline omission
- Hello world/Standard error
- Hello world/Text
- Hello world/Web server
- Here document
- Heronian triangles
- Hexapawn
- Higher-order functions
- Hofstadter Figure-Figure sequences
- Hofstadter Q sequence
- Hofstadter-Conway $10,000 sequence
- Horner's rule for polynomial evaluation
- Hostname
- HTTP
- HTTPS
- Huffman coding
- Hunt The Wumpus
I
K
L
- Langton's ant
- Largest int from concatenated ints
- Law of cosines - triples
- Leap year
- Least common multiple
- Leonardo numbers
- Letter frequency
- Levenshtein distance
- List comprehensions
- List rooted trees
- Literals/Integer
- Literals/String
- Logical operations
- Long multiplication
- Longest common prefix
- Longest common subsequence
- Longest Common Substring
- Longest increasing subsequence
- Look-and-say sequence
- Loop over multiple arrays simultaneously
- Loops/Break
- Loops/Continue
- Loops/Do-while
- Loops/Downward for
- Loops/For
- Loops/For with a specified step
- Loops/Foreach
- Loops/Infinite
- Loops/N plus one half
- Loops/Nested
- Loops/While
- Ludic numbers
- Luhn test of credit card numbers
- LZW compression
M
- Magic 8-Ball
- Magic squares of doubly even order
- Magic squares of odd order
- Main step of GOST 28147-89
- Make directory path
- Man or boy test
- Mandelbrot set
- Map range
- Matrix multiplication
- Matrix transposition
- Matrix-exponentiation operator
- Maximum triangle path sum
- Mayan numerals
- Maze generation
- Maze solving
- McNuggets Problem
- Menu
- Middle three digits
- Miller–Rabin primality test
- Mind boggling card trick
- Modular inverse
- Modulinos
- Monads/List monad
- Monads/Maybe monad
- Monads/Writer monad
- Monte Carlo methods
- Monty Hall problem
- Morse code
- Mouse position
- Move-to-front algorithm
- Multi-dimensional array
- Multifactorial
- Multiple distinct objects
- Multiple regression
- Multiplication tables
- Multisplit
- Munchausen numbers
- Mutual recursion
N
O
P
- Palindrome detection
- Pangram checker
- Parallel calculations
- Parsing/RPN calculator algorithm
- Parsing/RPN to infix conversion
- Parsing/Shunting-yard algorithm
- Partial function application
- Particle Swarm Optimization
- Pascal matrix generation
- Pascal's triangle
- Percentage difference between images
- Perceptron
- Perfect numbers
- Perfect shuffle
- Perfect totient numbers
- Permutations
- Permutations with repetitions
- Phrase reversals
- Pi
- Pick random element
- Plasma effect
- Playing cards
- Polymorphic copy
- Polymorphism
- Polyspiral
- Population count
- Power set
- Price fraction
- Primality by trial division
- Prime decomposition
- Probabilistic choice
- Program name
- Program termination
- Proper divisors
- Pythagoras tree
- Pythagorean quadruples
- Pythagorean triples
R
- Random number generator (included)
- Random numbers
- Range expansion
- Range extraction
- Ranking methods
- Rate counter
- Ray-casting algorithm
- RCRPG
- Read a configuration file
- Read a file line by line
- Read entire file
- Real constants and functions
- Recaman's sequence
- Reduced row echelon form
- Reflection/Get source
- Reflection/List methods
- Reflection/List properties
- Regular expressions
- Remove duplicate elements
- Rename a file
- Rep-string
- Repeat a string
- Respond to an unknown method call
- Return multiple values
- Reverse a string
- Reverse words in a string
- Roman numerals/Decode
- Roman numerals/Encode
- Roots of a function
- Roots of unity
- Rosetta Code/Find unimplemented tasks
- Rosetta Code/Fix code tags
- Rot-13
- RPG Attributes Generator
- Run-length encoding
- Runge-Kutta method
- Runtime evaluation
- Runtime evaluation/In an environment
S
- S-Expressions
- Sailors, coconuts and a monkey problem
- Sattolo cycle
- Scope modifiers
- Search a list
- Search a list of records
- SEDOLs
- Self-describing numbers
- Semordnilap
- Send an unknown method call
- Sequence of non-squares
- Set
- Set consolidation
- Seven-sided dice from five-sided dice
- Shell one-liner
- Short-circuit evaluation
- Show Ascii table
- Show the epoch
- Sierpinski carpet
- Sierpinski pentagon
- Sierpinski triangle
- Sierpinski triangle/Graphical
- Sieve of Eratosthenes
- Singleton
- Singly-linked list/Element definition
- Singly-linked list/Element insertion
- Singly-linked list/Traversal
- Sleep
- Smith numbers
- Snake
- Solve a Holy Knight's tour
- Solve the no connection puzzle
- Sort an array of composite structures
- Sort an integer array
- Sort disjoint sublist
- Sort stability
- Sort three variables
- Sort using a custom comparator
- Sorting algorithms/Bogosort
- Sorting algorithms/Bubble sort
- Sorting algorithms/Cocktail sort
- Sorting algorithms/Comb sort
- Sorting algorithms/Counting sort
- Sorting algorithms/Gnome sort
- Sorting algorithms/Heapsort
- Sorting algorithms/Insertion sort
- Sorting algorithms/Merge sort
- Sorting algorithms/Pancake sort
- Sorting algorithms/Quicksort
- Sorting algorithms/Selection sort
- Sorting algorithms/Shell sort
- Sorting algorithms/Sleep sort
- Sorting algorithms/Stooge sort
- Soundex
- Sparkline in unicode
- Special characters
- Special variables
- Speech synthesis
- Spiral matrix
- Split a character string based on change of character
- Square but not cube
- Stable marriage problem
- Stack
- Stack traces
- Stem-and-leaf plot
- Stern-Brocot sequence
- Straddling checkerboard
- String append
- String case
- String concatenation
- String interpolation (included)
- String length
- String matching
- String prepend
- Strip a set of characters from a string
- Strip comments from a string
- Strip control codes and extended characters from a string
- Strip whitespace from a string/Top and tail
- Substring
- Substring/Top and tail
- Sudoku
- Sum and product of an array
- Sum and Product Puzzle
- Sum digits of an integer
- Sum multiples of 3 and 5
- Sum of a series
- Sum of squares
- Sum to 100
- Sunflower fractal
- Superellipse
- Sutherland-Hodgman polygon clipping
- Symmetric difference
- System time
T
- Take notes on the command line
- Taxicab numbers
- Temperature conversion
- Terminal control/Preserve screen
- Ternary logic
- Test a function
- Tetris
- Text between
- Text processing/1
- Text processing/2
- Text processing/Max licenses in use
- The Twelve Days of Christmas
- Thue-Morse
- Tic-tac-toe
- Tokenize a string
- Tokenize a string with escaping
- Top rank per group
- Topological sort
- Towers of Hanoi
- Trabb Pardo–Knuth algorithm
- Tree traversal
- Trigonometric functions
- Truth table
- Two Sum
- Type detection