Vit*_*ich 285 javascript let ecmascript-6
我理解为什么var
采用这个名字 - 它是变量的,const
- 它是一个常量,但名称背后的含义是什么let
,它的范围是当前的块?随它去?
exe*_*ook 336
Let是早期编程语言(如Scheme和Basic)采用的数学语句.变量被认为是不适合更高抽象级别的低级实体,因此许多语言设计者希望引入类似但更强大的概念,如Clojure,F#,Scala,其中let
可能意味着值,或者可以赋值的变量,但没有改变,这反过来又让编译器捕获更多的编程错误并更好地优化代码.JavaScript var
从一开始就有,所以他们只需要另一个关键字,并且只是借用let
了尽可能接近已经作为传统关键字的其他几十种语言var
,尽管在JavaScript中let
创建了块范围局部变量.
Tig*_*uev 70
我想它遵循数学传统.在数学中,人们常说"让x为任意实数"或类似.
Eva*_*oks 62
添加到exebook的回应,关键字的数学使用让也封装很好的作用域影响let
在Javascript/ES6使用时.具体来说,正如下面的ES6代码忽略大括号中的赋值toPrint
并打印出以下值'Hello World'
:
let toPrint = 'Hello World.';
{
let toPrint = 'Goodbye World.';
}
console.log(toPrint); // Prints 'Hello World'
Run Code Online (Sandbox Code Playgroud)
让在正式数学(特别是证明的写入)作为用于表示一个变量的当前实例只存在于该逻辑构思的范围.在下面的例子中,x在输入新想法时立即获得新的身份(通常这些是证明主要想法所必需的概念),并在子证明结束时立即恢复到旧的x.当然,就像在编码中一样,这被认为有些混乱,因此通常通过为另一个变量选择不同的名称来避免.
设x是这样的......
证明的东西
新想法{让x成为别的东西......证明一些东西}结束新想法
用旧x证明主要想法
Cha*_*lie 35
它确实var
与范围差异有关.现在它不能取名,var
因为已经采取了.
所以看起来它已经采用了一个有趣的英语语言结构中具有语义的下一个最佳名称.
let myPet = 'dog';
Run Code Online (Sandbox Code Playgroud)
用英语说"让我的宠物成为狗"
归档时间: |
|
查看次数: |
85763 次 |
最近记录: |