当前位置: 首页 > 知识库问答 >
问题:

什么是‘严格使用’;是否不使用此函数和变量?[副本]

汪欣德
2023-03-14
'use strict';
            
function NAME2 (){
  name = 'Smith';
  console.log(name);    
}
NAME2();

function NAME3 (){
  name = 'John'; 
  console.log(name);
}
NAME3();               

正如您在这两个函数中看到的,我没有使用任何变量关键字来定义仍在执行的变量。

发生了什么?

或者在JS中使用变量关键字只是可选的?

共有1个答案

杭泉
2023-03-14

在严格模式下禁止分配给未声明的变量,但在浏览器上下文中,name在全局范围内预先声明。

如果您要在浏览器外部运行代码,则会出错:

 类似资料:
  • 本文向大家介绍是否使用过functools中的函数?其作用是什么?相关面试题,主要包含被问及是否使用过functools中的函数?其作用是什么?时的应答技巧和注意事项,需要的朋友参考一下 用于修复装饰器  

  • 问题内容: 我已经搜索了很多,并在此处给出的堆栈溢出中得到了这个答案 那说明我们可以同时使用构造函数和简单初始化 但我想要答案 但是,如果编译器自动完成构造函数初始化,为什么还要使用构造函数初始化呢! 问题答案: 构造函数的简单定义: 初始化类对象的特殊方法。始终且仅与关键字一起使用以创建类的实例。 与类的名称相同。 可以接受一个或多个参数。 没有返回值,甚至没有void。 默认构造函数不带任何参

  • 问题内容: 好的,我知道标题不能完全解释这个问题。因此,我正在编写一个执行大量计算的程序,并尝试对其进行优化,以使其运行不会太慢。我有一个函数,该函数是一个类的成员,该函数被调用约500万次。这是功能: 我想知道在类中声明变量vpPointx和vpPointy是否比每次调用函数时声明它们更好/更快。这将是一个很好的优化还是效果不大? 通常,如果这里有任何可以优化的内容,请告诉我。 问题答案: 通过

  • 问题内容: 我正在使用MongoDB的node.js应用程序上工作,我从docs中读取了此内容: db.collection 获取特定的集合(包含实际的集合信息)。如果应用程序不使用严格模式,则可以通过以下方式在没有回调的情况下使用它。 首先,文档指的是什么“严格模式”? 另外,以这种方式获取系列是不明智的做法吗?没有回调,尝试选择正确的集合时,我是否不会失去捕获潜在连接错误的能力? 问题答案:

  • 我试图在反应应用程序中显示时间,并希望以12小时的格式显示。 我编写了一个函数,如果小时数显示为13或以上,则删除“12”。我想将该函数传递到setState,但仍然会得到一个语法错误。 我希望看到下午1:31,但我只是在setState行中出现了语法错误。我无法忘记这一点。 除此之外,我在之前的状态下如何通过?

  • My while循环中断,因为“非静态方法HasPrecence(java.lang.String,java.lang.String)不能从静态上下文引用”