📜  JavaScript 库中的前导分号有什么作用?

📅  最后修改于: 2022-05-13 01:56:27.023000             🧑  作者: Mango

JavaScript 库中的前导分号有什么作用?

JavaScript中的分号分隔社区。一些开发人员更喜欢始终使用它们。很少有开发人员想避开它们。在某些情况下,忽略它们可能会导致不良后果。当两个语句在同一行时,需要分号。所以如果你要把两个语句放在同一行,你必须用分号分隔它们。仅当您在同一行上有两个或多个语句时,分号才是强制性的。应该有使用分号来避免错误的良好做法。

句法:

// Semicolon compulsory
let i = 0; i++  

前导分号的主要目的是表示保险,即如果库嵌入在任何其他代码中可能有错误,那么它将把最新的语句视为最后的语句。换句话说,这个分号的目的是避免一个文件与另一个文件连接时出现错误

因为问题在于它可以被解释为之前声明的延续。因此,一个领先的';'用于 JavaScript 库前面,以防止在连接过程中将任何文件附加到包含未以分号正确终止的表达式的文件时出现错误。 JavaScript 分号是可选的,因为 JavaScript 并不严格要求分号,因为它是一个后台进程(自动分号插入),它会在需要时自动添加分号。因此,与 C 等任何其他语言不同,它不是强制要求在语句末尾使用分号,相反,它在这里是可选的。 JavaScript 解释器的工作是在运行任何代码时智能地添加分号。但是如果我们在谈论连接两个或多个文件,那么为了避免错误,我们必须在 JavaScript 库前面放置一个分号。 JavaScript 中的库显示了一个以分号开头的函数
句法:

;(function ){
    
}

示例 1:在此示例中,我们不会在第一个代码中使用分号,而是在第二个代码中使用。

javascript
let userName = 'Deeksha';
  
function showMessage() {
  let message = 'hey, ' + userName;
  console.log(message);
    
}
function ReadMessage() {
  let read = 'You are promoted, ' + userName;
  console.log(read);
   
}
  
// When we are concatenating without 
// a semicolon
showMessage()
ReadMessage()


javascript
let userName = 'Deeksha';
  
function showMessage() {
  let message = 'hey, ' + userName;
  console.log(message);
    
}
function ReadMessage() {
  let read = 'You are promoted, ' + userName;
  console.log(read);
   
}
  
// When we are concatenating with 
// a semicolon
;showMessage();ReadMessage()


javascript
var animal = "Tiger";
  
function fun() {
  animal = "Tiger";
  console.log(animal)
    
}
fun();
  
var animal = "Tiger";(function(){})()


javascript
var animal = "Tiger";
  
function fun() {
  animal = "Tiger";
  console.log(animal)
    
}
fun();
  
var animal = "Tiger"(function(){})()


输出:

hey, Deeksha
You are promoted, Deeksha

javascript

let userName = 'Deeksha';
  
function showMessage() {
  let message = 'hey, ' + userName;
  console.log(message);
    
}
function ReadMessage() {
  let read = 'You are promoted, ' + userName;
  console.log(read);
   
}
  
// When we are concatenating with 
// a semicolon
;showMessage();ReadMessage()

输出:

hey, Deeksha
You are promoted, Deeksha

示例 2:

  • 语法:让我们使用一个带有变量的 JavaScript 文件
var animal= ”Tiger”
  • 语法:现在,让我们使用另一个带有函数的 JavaScript 文件:
(function(){})()

现在,如果您分别连接两个文件,它会很好地工作,但如果您像经常这样做以减少请求数量那样连接它们,它可能会出错。

javascript

var animal = "Tiger";
  
function fun() {
  animal = "Tiger";
  console.log(animal)
    
}
fun();
  
var animal = "Tiger";(function(){})()

输出:

Tiger

javascript

var animal = "Tiger";
  
function fun() {
  animal = "Tiger";
  console.log(animal)
    
}
fun();
  
var animal = "Tiger"(function(){})()

输出:

Tiger
/home/tim/Personal/Semifinished/index.js:10
var animal = "Tiger"(function(){})()
                    ^

TypeError: "Tiger" is not a function

注意:在上述过程中,引擎尝试调用 (First)() 的结果,但使用参数 Second。因此,重要的是在 JavaScript 库前面添加分号来分隔语句来解决问题。