Blockchain is platform and language agnostic. That means, you can use any popular programming language to create a blockchain. Some of the popular blockchains are developed using C++, Java, JavaScript, Go, Python, C#, Ruby, Solidity, and PHP.
You can create your blockchain using JavaScript but only some portions of it. A blockchain is a combination of several technologies including cryptography, distributed ledger technology, P2P network programming, database storage and sharing, network communication and notifications, backend services, UI components and so on. So building a complete blockchain product may require more than just one language.
Some of the popular publicly available blockchains (permissionless or permissioned) that are written in JavaScript are IOTA, Verge, and NEM.
Basic blockchain
Here are some videos that will help you understand and learn how to build a basic blockchain using JavaScript.
Video 1: Create a Blockchain with JavaScript
Video 2: Implement Proof of Work in a Blockchain
Video 3: Mining Rewards and Transactions in a Blockchain
Blockchain course on Udemy
In this course you will be building your very own blockchian and decentralized blockchain network by using the JavaScript programming language. By building your own blockchain, you will learn how blockchian technology works under-the-hood, how decentralized blockchain networks function, how the code behind these technologies work, and why blockchain is such a secure and valuable technology.
Course: https://www.udemy.com/build-a-blockchain-in-javascript/
The blockchain that you build in this course will have all of the following features:
- A proof of work algorithm to secure the network.
- Hashing algorithms to secure the data within the blockchain.
- The ability to mine (create) new blocks that contain data.
- The ability to create transactions and store them in blocks.
- An API/server that will be used to interact with the blockchain from the internet.