zoukankan      html  css  js  c++  java
  • 变量名声明和赋值的时候不一致

    let greeting;
    greetign = {}; // Typo!
    console.log(greetign);
    • A: {}

    • B: ReferenceError: greetign is not defined

    • C: undefined

    控制台会输出空对象,因为我们刚刚在全局对象上创建了一个空对象! 当我们错误地将greeting输入为greetign时,JS解释器实际上在浏览器中将其视为global.greetign = {}(或window.greetign = {})。

    为了避免这种情况,我们可以使用'use strict'。 这可以确保在将变量赋值之前必须声明变量。

    答案: A

    练习

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 
     4 <head>
     5   <meta charset="UTF-8">
     6   <meta name="viewport" content="width=device-width, initial-scale=1.0">
     7   <meta http-equiv="X-UA-Compatible" content="ie=edge">
     8   <title></title>
     9 </head>
    10 
    11 <body>
    12 </body>
    13 
    14 </html>
    15 <script type="text/javascript">
    16   'use strict'
    17   let greeting;
    18   greetign = {}; // Typo!
    19   console.log(greetign);
    20 </script>
    index.html

    总结:

    使用“use strict”的意义

  • 相关阅读:
    seajs快速了解
    lazyload.js详解
    iScroll-js—“smooth scrolling for the web”
    Backbone学习笔记一Backbone中的MVC
    JMH基准测试框架
    idea 下运行安卓项目
    安卓
    C++
    看完
    四叉树的js实现
  • 原文地址:https://www.cnblogs.com/wang715100018066/p/11088921.html
Copyright © 2011-2022 走看看