Can JavaScript only be used to write front-end?
JavaScript can not only write front-end, it can also write back-end; JavaScript can use Node.js to achieve back-end development. Node.js is a development platform that allows JavaScript to run on the server. It is an event-driven "I/O" server-side JavaScript environment. Node.js can be understood as JavaScript running on the server, so JavaScript can be written on the backend.
The operating environment of this tutorial: windows7 system, javascript version 1.8.5, Dell G3 computer.
JavaScript can not only write the front end, it can also write the back end.
JavaScript can achieve back-end development through Node.js technology. Node.js is a development platform that allows JavaScript to run on the server. It allows JavaScript to become a service with PHP, Python, Perl, Ruby, etc. A scripting language on par with terminal languages.
Node.js allows js to run on the server side, and uses the Google v8 engine to bring about a performance leap, making its performance almost close to that of the go language. The asynchronous programming method allows it to handle huge concurrency. But it now also has the following shortcomings:
There is no highly unified development method like the Spring framework of Java; The ecology is not perfect enough. As a front-end developer who wants to develop the backend, you may be embarrassed by yourself first. But in fact, for small and medium-sized systems, the most important thing to develop a backend is to be familiar with "SQL". As long as you master this, you will be able to get started with backend development. Because everything else is prepared for you by the framework.
Selection of framework
The node frameworks currently used for back-end development are:
- egg
- express
- koa
- nest
- . . .
So how should we choose? A good way is to look at the start of github. Then we compared the start of koa which is the most popular. However, the author here recommends everyone to use egg for the following reasons:
- Developed by Alibaba Financial Services, maintenance and upgrade iterations are guaranteed;
- The bottom layer is based on koa;
- Deployment You can easily use multi-core to squeeze server performance when serving;
- Rich plug-ins are available for you to choose from, and you can also customize your own plug-ins;
- Not recommended for small and medium-sized systems If you use a springboot-like framework like nest, it is better to use springboot directly to be more complete, sound and stable;
javascript Things you must know before writing the backend
Node breaks the bottleneck that JS can only develop front-end, and truly realizes the feat of those who master JS conquering the world! However, doing back-end is much more rigorous than doing front-end, so you must be aware of some "BUGs" in the JS language. Don't let the data go wrong and you'll be completely confused.
The following are examples of some common problems in JS data processing, as well as solutions! Help everyone consolidate the foundation of JS and avoid detours in work.
1. The problem of floating point data losing precision:
Floating point type is divided into single precision floating point type (float)andDouble precision floating point type (double) , which is described in detail in strongly typed languages (C, JAVA), is collectively called Number type (Number) in JS. Interested readers can learn relevant knowledge. This article continues to return to the above questions.
First look at the performance of the loss of accuracy problem. The source code is as follows:
console.log(0.1+0.2); //0.30000000000000004
The result should be 0.3, but the running result appears A confusing question. This is absolutely not allowed in back-end development. This problem does not only appear in JS. After testing, this problem exists in JAVA and PHP, but does not exist in C. Why haven’t I learned any other languages? I don’t know why!
After talking about the problem, let’s talk about the solution. The source code is as follows:
const floatAdd = (arg1, arg2) => { let r1,r2,m; try { r1 = arg1.toString().split(".")[1].length; } catch(e) { r1 = 0; } try { r2 = arg2.toString().split(".")[1].length; } catch(e) { r2 = 0; } m =Math.pow(10,Math.max(r1,r2)); return (arg1*m+arg2*m)/m; }; console.log(floatAdd(0.1,0.2)); // 0.3
Fortunately, through the above code, we got the correct result we wanted, but JS left us with problems It’s not over yet, please see the following questions
2. The rounding bug of toFixed():
This question is still related to the previous question "Floating point" data. See the sample code below:##toFixed() The method uses fixed point notation to format a numeric value. To put it simply, it is the process of rounding the data, and the fixed point represents the number of decimal places to be retained.
let a=1.115; console.log(a.toFixed(2)) //1.11
1.12. The clever editor is trying hard to find ways to circumvent the pitfalls. Please see the source code:
const newToFixed=(value,length)=>{ let tempNum = 0; let s,temp; let s1 = value + ""; let start = s1.indexOf("."); if(s1.substr(start+length+1,1)>=5){ tempNum=1; } temp = Math.pow(10,length); s = Math.floor(value * temp) + tempNum; return s/temp; } console.log(newToFixed(1.115,2)) //1.12
Tens of millions of lines of code, the first basic line. The foundation is not solid, and I will shed tears from now on.
Note: The code example uses the ECMAScript 2015 version syntax. If you have compatibility requirements, don’t forget to modify the source code.Tens of millions of lines of code are compatible with the first line. Compatible or not, I shed tears in the first two lines.
[Related recommendations: web front-end development]
The above is the detailed content of Can JavaScript only be used to write front-end?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

How to use WebSocket and JavaScript to implement an online speech recognition system Introduction: With the continuous development of technology, speech recognition technology has become an important part of the field of artificial intelligence. The online speech recognition system based on WebSocket and JavaScript has the characteristics of low latency, real-time and cross-platform, and has become a widely used solution. This article will introduce how to use WebSocket and JavaScript to implement an online speech recognition system.

WebSocket and JavaScript: Key technologies for realizing real-time monitoring systems Introduction: With the rapid development of Internet technology, real-time monitoring systems have been widely used in various fields. One of the key technologies to achieve real-time monitoring is the combination of WebSocket and JavaScript. This article will introduce the application of WebSocket and JavaScript in real-time monitoring systems, give code examples, and explain their implementation principles in detail. 1. WebSocket technology

Introduction to how to use JavaScript and WebSocket to implement a real-time online ordering system: With the popularity of the Internet and the advancement of technology, more and more restaurants have begun to provide online ordering services. In order to implement a real-time online ordering system, we can use JavaScript and WebSocket technology. WebSocket is a full-duplex communication protocol based on the TCP protocol, which can realize real-time two-way communication between the client and the server. In the real-time online ordering system, when the user selects dishes and places an order

How to use WebSocket and JavaScript to implement an online reservation system. In today's digital era, more and more businesses and services need to provide online reservation functions. It is crucial to implement an efficient and real-time online reservation system. This article will introduce how to use WebSocket and JavaScript to implement an online reservation system, and provide specific code examples. 1. What is WebSocket? WebSocket is a full-duplex method on a single TCP connection.

JavaScript and WebSocket: Building an efficient real-time weather forecast system Introduction: Today, the accuracy of weather forecasts is of great significance to daily life and decision-making. As technology develops, we can provide more accurate and reliable weather forecasts by obtaining weather data in real time. In this article, we will learn how to use JavaScript and WebSocket technology to build an efficient real-time weather forecast system. This article will demonstrate the implementation process through specific code examples. We

JavaScript tutorial: How to get HTTP status code, specific code examples are required. Preface: In web development, data interaction with the server is often involved. When communicating with the server, we often need to obtain the returned HTTP status code to determine whether the operation is successful, and perform corresponding processing based on different status codes. This article will teach you how to use JavaScript to obtain HTTP status codes and provide some practical code examples. Using XMLHttpRequest

Usage: In JavaScript, the insertBefore() method is used to insert a new node in the DOM tree. This method requires two parameters: the new node to be inserted and the reference node (that is, the node where the new node will be inserted).

JavaScript is a programming language widely used in web development, while WebSocket is a network protocol used for real-time communication. Combining the powerful functions of the two, we can create an efficient real-time image processing system. This article will introduce how to implement this system using JavaScript and WebSocket, and provide specific code examples. First, we need to clarify the requirements and goals of the real-time image processing system. Suppose we have a camera device that can collect real-time image data
