代码之家  ›  专栏  ›  技术社区  ›  TheGameiswar

在javascript中分配字符串

  •  2
  • TheGameiswar  · 技术社区  · 7 年前

    我遵循本教程学习javascript,目前正在观看本教程的第33个视频: EJ media Javascript

    作者在视频中说,下面的对象是字符串对象:

    var hello = "hello world";
    

    一段时间后,他做到了

    hello = hello.length;
    

    我无法理解 hello 此处说明这仍然是字符串对象(因为 hello.length 返回一个数字,我们将其存储在同一hello变量和同一作用域中)。如果这是基本的,请告诉我,我尝试过使用术语“java脚本字符串分配”进行搜索,但没有找到相关的结果。

    以下是整个代码:

    var hello = "hello world";
    hello = hello.length;
    
    2 回复  |  直到 7 年前
        1
  •  3
  •   Tareq    7 年前

    这是因为JavaScript是动态的弱类型语言。

    • 动态类型化意味着类型检查将在运行时而不是在编译器中执行。

    • 弱类型是指在代码中动态更改类型的能力。

    考虑到这些特性 var hello="hello world"; 将定义一个名为 hello 具有类型值 String 当你这样做的时候 hello=hello.length; 然后覆盖 你好 具有的值 Number 返回的类型 hello.length

    var hello = "hello world";
    
    console.log(typeof hello);
    
    hello = hello.length;
    
    console.log(typeof hello);
        2
  •  2
  •   N-ate    7 年前

    在javascript中,变量类型是可变的。这可能有一个技术名称。

    可以重复更改变量类型。

    例如,将字符串“1234”更改为数字类型最简洁的方法是执行“1234”*1;