12种不宜选用的javascript的语法,12种不宜接纳的Javascript语法

目前,小编在读《Javascript语言精彩》。

转自阮一峰:

转自阮一峰:

 1. ==

那本书很薄,100多页,正好假期里翻翻。

前不久写的有的小东西,总是出美妙绝伦的题目,用了angular.js反应居然比本人的jQuery还慢,客户揶揄了,笔者又把三个小操作,改成了jQuery.浏览一下大神的的博客。转发一点东西:

近来写的局部小东西,总是出多姿多彩的标题,用了angular.js反应居然比小编的jQuery还慢,客户作弄了,笔者又把一个小操作,改成了jQuery.浏览一下大神的的博客。转发一点东西:

Javascript有两组相等运算符,一组是==和!=,另一组是===和!==。前面三个只比较值的对等,前面一个除了值以外,还比较类型是不是同样。

亚洲必赢官网 1

《Javascript语言雅观》

《Javascript语言出色》

请尽可能不要使用前一组,永世只使用===和!==。因为==暗中认可会实行类型转变,法则不行难记。若是您不注重的话,请回复下边八个剖断式的值是true仍然false:

该书的撰稿人是DougRussCrockford,他是当下世界上最理解Javascript的人之一,也是Json格式的创制者。

 

 

  false == ‘false’

他感到Javascript有大多残余。因为一九九三年Brendan
Eich设计这种语言的时候,只用了7个月,多数言语特色未有经过不假思虑,就拉动了市面。结果等到大家发掘到这么些主题材料的时候,已经有100万技术员在行使它了,不容许再小幅度修改语言本人了。所以,DouglasCrockford决定,他要报告我们,Javascript中如何部分是爱不释手,哪些部分是糟粕和鸡肋。

该书的撰稿人是DouglasCrockford,他是眼前世界上最明白Javascript的人之一,也是Json格式的创建者。

该书的笔者是DougRussCrockford,他是最近世界上最驾驭Javascript的人之一,也是Json格式的成立者。

  false == undefined

这几个主张相当好,但是自个儿只能说,那本书写得非常不足好,不合乎新手阅读。原因如下:1)DouglasCrockford陈说得不分明,更像与同行探究难题,而不是由表及里地讲学难点。那本书的显要不是分解,所以读完后,作者认为Javascript好像变得更头晕目眩了。2)他顽固地运用铁路图(railroad
diagram)解释每一条语句。整个世界就好像只有他壹位利用这种比Javascript更难看懂的图。3)该书基本上是一本简化的Javascript语法手册,贫乏丰裕的新剧情。4)该书举例过少,而且在最难的函数和目标部分,使用的事例都以环环相套、层层推进的例子,导致阅读起来很伤脑筋。

他感到Javascript有成都百货上千残余。因为一九九二年Brendan
Eich设计这种语言的时候,只用了四个月,繁多言语特色未有通过深思,就促进了市面。结果等到大家开掘到那几个难题的时候,已经有100万技术员在使用它了,不容许再大幅度修改语言本人了。所以,道格RussCrockford决定,他要报告大家,Javascript中怎样部分是雅俗共赏,哪些部分是糟粕和鸡肋。

他感到Javascript有许多残余。因为一九九四年布伦达n
Eich设计这种语言的时候,只用了7个月,好些个言语特色未有经过沉思熟虑,就促进了市面。结果等到大家开采到这一个主题材料的时候,已经有100万程序员在使用它了,不容许再大幅度修改语言本身了。所以,DouglasCrockford决定,他要报告我们,Javascript中怎样部分是优质,哪些部分是糟粕和鸡肋。

  false == null

该书最有价值的内容不是本文,反而是附录。在附录B中,DouglasCrockford列出了12种应该防止选择的Javascript语法,笔者认为极度值得推广。

那么些主见相当好,然而本人只可以说,这本书写得相当不足好,不适合新手阅读。原因如下:1)道格RussCrockford呈报得不鲜明,更像与同行探讨难题,而不是由表及里地讲学难题。那本书的基本点不是演讲,所以读完后,作者感觉Javascript好像变得更头晕目眩了。2)他志高气扬地运用铁路图(railroad
diagram)解释每一条语句。环球就好像唯有他一位利用这种比Javascript更难看懂的图。3)该书基本上是一本简化的Javascript语法手册,缺少丰富的新剧情。4)该书比方过少,而且在最难的函数和目的部分,使用的例子都是环环相套、层层推进的例证,导致阅读起来很伤脑筋。

其一主张丰富好,不过作者只好说,那本书写得相当不够好,不切合新手阅读。原因如下:1)DouglasCrockford陈诉得不明晰,更像与同行钻探难题,而不是由表及里地执教难点。那本书的机要不是表达,所以读完后,作者觉着Javascript好像变得更复杂了。2)他顽固地行使铁路图(railroad
diagram)解释每一条语句。全世界就像是唯有她壹个人采用这种比Javascript更难看懂的图。3)该书基本上是一本简化的Javascript语法手册,缺乏丰富的新剧情。4)该书比如过少,而且在最难的函数和对象部分,使用的例证都以环环相套、层层递进的事例,导致阅读起来很费力。

  null == undefined

==============================

该书最有价值的情节不是本文,反而是附录。在附录B中,DouglasCrockford列出了12种应该制止使用的Javascript语法,小编认为格外值得推广。

该书最有价值的原委不是本文,反而是附录。在附录B中,DouglasCrockford列出了12种应该制止使用的Javascript语法,笔者觉着十分值得推广。

  0 == ”

1. ==

==============================

==============================

前八个是false,后四个是true。

Javascript有两组相等运算符,一组是==和!=,另一组是===和!==。前者只相比较值的十一分,前面一个除了值以外,还相比较类型是或不是一样。

  1. ==
  1. ==

 

请尽量不要选用前一组,长久只行使===和!==。因为==暗中同意会实行类型转换,准绳不行难记。如若您不信任的话,请回答上边八个推断式的值是true依然false:

Javascript有两组相等运算符,一组是==和!=,另一组是===和!==。前面三个只相比值的对等,前面一个除了值以外,还比较类型是或不是一律。

Javascript有两组相等运算符,一组是==和!=,另一组是===和!==。前边二个只相比值的也正是,前者除了值以外,还相比类型是还是不是相同。

2. with

  false == ‘false’

请尽量不要选取前一组,永恒只使用===和!==。因为==默许会实行类型转换,准绳不行难记。即使您不依赖的话,请回答上面八个推断式的值是true依然false:

12种不宜选用的javascript的语法,12种不宜接纳的Javascript语法。请尽量不要使用前一组,永世只利用===和!==。因为==默许会进行类型调换,法规不行难记。若是您不重视的话,请回答上边八个判别式的值是true仍然false:

with的本心是缩减键盘输入。比方

  false == undefined

  false == ‘false’

  false == ‘false’

  obj.a = obj.b;

  false == null

  false == undefined

  false == undefined

  obj.c = obj.d;

  null == undefined

  false == null

  false == null

能够简写成

  0 == ”

  null == undefined

  null == undefined

  with(obj) {
    a = b;
    c = d;
  }

前多个是false,后五个是true。

  0 == ”

  0 == ”

但是,在其实运转时,解释器会首先鉴定obj.b和obj.d是或不是留存,假诺不设有的话,再判定全局变量b和d是不是存在。这样就导致了低效能,而且恐怕会促成意外,因而最佳不用选择with语句。

2. with

前三个是false,后七个是true。

前八个是false,后七个是true。

 

with的本心是压缩键盘输入。比如

  1. with
  1. with

3. eval

  obj.a = obj.b;

with的本心是缩短键盘输入。比如

with的原意是压缩键盘输入。比方

eval用来向来实行二个字符串。那条语句也是不应该使用的,因为它有质量和安全性的难题,并且使得代码更难阅读。

  obj.c = obj.d;

  obj.a = obj.b;

  obj.a = obj.b;

eval能够一呵而就的业务,不用它也能一鼓作气。比如

能够简写成

  obj.c = obj.d;

  obj.c = obj.d;

  eval(“myValue = myObject.” + myKey + “;”);

  with(obj) {
    a = b;
    c = d;
  }

能够简写成

能够简写成

能够直接写成

不过,在实际上运作时,解释器会首先推断obj.b和obj.d是还是不是存在,要是不存在的话,再决断全局变量b和d是或不是留存。那样就变成了低效能,而且也许会导致意外,因而最佳不要选用with语句。

  with(obj) {
    a = b;
    c = d;
  }

  with(obj) {
    a = b;
    c = d;
  }

  myValue = myObject[myKey];

3. eval

可是,在其实运转时,解释器会首先决断obj.b和obj.d是还是不是留存,固然不设有的话,再决断全局变量b和d是或不是存在。那样就导致了低功效,而且恐怕会促成意外,因而最棒不用采取with语句。

唯独,在实质上运作时,解释器会首先决断obj.b和obj.d是或不是存在,如若不设有的话,再推断全局变量b和d是还是不是存在。那样就导致了低成效,而且恐怕会形成意外,由此最佳不用采取with语句。

至于ajax操作重返的json字符串,能够选择官方网站提供的深入分析器json_parse.js运行。

eval用来一贯实践贰个字符串。那条语句也是不该使用的,因为它有总体性和安全性的问题,并且使得代码更难阅读。

  1. eval
  1. eval

 

eval能够产生的业务,不用它也能做到。举例

eval用来一向奉行八个字符串。那条语句也是不应有运用的,因为它有品质和安全性的主题材料,并且使得代码更难阅读。

eval用来一向实行七个字符串。那条语句也是不应有使用的,因为它有总体性和安全性的主题材料,并且使得代码更难阅读。

4. continue

  eval(“myValue = myObject.” + myKey + “;”);

eval能够成功的事情,不用它也能到位。举例

eval能够做到的职业,不用它也能不辜负众望。举例

这条命令的作用是回来到循环的尾部,可是循环本来就能够回去到尾部。所以通过适当的布局,完全可防止止选拔那条命令,使得作用获得革新。

能够平昔写成

  eval(“myValue = myObject.” + myKey + “;”);

  eval(“myValue = myObject.” + myKey + “;”);

 

  myValue = myObject[myKey];

能够一直写成

能够一贯写成

5. switch 贯穿

关于ajax操作重回的json字符串,能够应用官方网站提供的分析器json_parse.js运行。

  myValue = myObject[myKey];

  myValue = myObject[myKey];

switch结构中的case语句,默许是各类试行,除非遭受break,return和throw。有的技士喜欢使用这一个个性,比方

4. continue

至于ajax操作重回的json字符串,能够利用官网提供的深入分析器json_parse.js运行。

关于ajax操作再次回到的json字符串,能够行使官方网站提供的分析器json_parse.js运行。

  switch(n) {
    case 1:
    case 2:
      break;
  }

那条命令的效用是回去到循环的头顶,可是循环本来就能够回到到底部。所以经过适当的布局,完全能够制止选取那条命令,使得功能获得考订。

  1. continue
  1. continue

如此写轻易失误,而且难以觉察。因而建议制止switch贯穿,凡是有case的地点,一律加上break。

5. switch 贯穿

那条命令的法力是回去到循环的底部,然而循环本来就可以回到到底部。所以通过适当的结构,完全可防止止采用这条命令,使得功能获得革新。

这条命令的功用是回去到循环的头顶,可是循环本来就能够回到到尾部。所以经过适当的结构,完全可防止止采纳这条命令,使得功用获得革新。

  switch(n) {
    case 1:
      break;
    case 2:
      break;
  }

switch结构中的case语句,默许是各样推行,除非境遇break,return和throw。有的技术员喜欢使用那本性情,例如

  1. switch 贯穿
  1. switch 贯穿

 

  switch(n) {
    case 1:
    case 2:
      break;
  }

switch结构中的case语句,暗中同意是各种实施,除非遇到break,return和throw。有的技士喜欢使用这一个特点,比方

switch结构中的case语句,暗许是逐条推行,除非蒙受break,return和throw。有的工程师喜欢使用这些性情,例如

6. 单行的块结构

诸如此类写轻易出错,而且难以开掘。由此提出防止switch贯穿,凡是有case的地方,一律加上break。

  switch(n) {
    case 1:
    case 2:
      break;
  }

  switch(n) {
    case 1:
    case 2:
      break;
  }

if、while、do和for,都以块结构语句,可是也得以承受单行命令。比方

  switch(n) {
    case 1:
      break;
    case 2:
      break;
  }

如此写轻巧失误,而且难以觉察。因而建议防止switch贯穿,凡是有case的地点,一律加上break。

诸如此类写轻巧失误,而且难以发掘。由此提出幸免switch贯穿,凡是有case的地点,一律加上break。

  if (ok) t = true;

6. 单行的块结构

  switch(n) {
    case 1:
      break;
    case 2:
      break;
  }

  switch(n) {
    case 1:
      break;
    case 2:
      break;
  }

以至写成

if、while、do和for,都是块结构语句,可是也得以接受单行命令。譬喻

  1. 单行的块结构
  1. 单行的块结构

  if (ok)
    t = true;

  if (ok) t = true;

if、while、do和for,都以块结构语句,但是也可以承受单行命令。譬如

if、while、do和for,都以块结构语句,不过也得以承受单行命令。举个例子

诸如此类不便利阅读代码,而且未来增多语句时特别轻便出错。建议不管是还是不是唯有一行命令,都一概加上海高校括号。

居然写成

  if (ok) t = true;

  if (ok) t = true;

  if (ok){
    t = true;
  }

  if (ok)
    t = true;

依然写成

竟然写成

 

如此这般不便于阅读代码,而且现在增多语句时极其轻便出错。提议不管是否唯有一行命令,都一律加上海高校括号。

  if (ok)
    t = true;

  if (ok)
    t = true;

7. ++和–

  if (ok){
    t = true;
  }

如此那般不实惠阅读代码,而且未来增多语句时非常轻便出错。提出不管是否唯有一行命令,都一律加上海大学括号。

如此不方便人民群众阅读代码,而且以往增加语句时特别轻易出错。提议不管是否只有一行命令,都一概加上海大学括号。

递增运算符++和递减运算符–,间接来自C语言,表面上可以让代码变得很紧密,可是事实上会让代码看上去更复杂和更晦涩。因而为了代码的整洁性和易读性,不用为好。

7. ++和–

  if (ok){
    t = true;
  }

  if (ok){
    t = true;
  }

 

递增运算符++和递减运算符–,直接来自C语言,表面上能够让代码变得很紧密,不过事实上会让代码看上去更复杂和更晦涩。由此为了代码的整洁性和易读性,不用为好。

  1. ++和–
  1. ++和–

8. 位运算符

8. 位运算符

递增运算符++和递减运算符–,直接来源于C语言,表面上能够让代码变得很紧密,可是实际上会让代码看上去更目迷五色和更晦涩。由此为了代码的整洁性和易读性,不用为好。

递增运算符++和递减运算符–,直接来源于C语言,表面上能够让代码变得很紧密,不过事实上会让代码看上去更目不暇接和更晦涩。由此为了代码的整洁性和易读性,不用为好。

Javascript完全套用了Java的位运算符,包罗按位与&、按位或|、按位异或^、按位非~、左移<<、带符号的右移>>和用0补足的右移>>>。

Javascript完全套用了Java的位运算符,蕴含按位与&、按位或|、按位异或^、按位非~、左移<<、带符号的右移>>和用0补足的右移>>>。

  1. 位运算符
  1. 位运算符

那套运算符针对的是整数,所以对Javascript完全无用,因为Javascript内部,全部数字都保存为双精度浮点数。假设应用它们来讲,Javascript不得不将运算数先转为整数,然后再进行演算,那样就暴跌了速度。而且”按位与运算符”&同”逻辑与运算符”&&,很轻便混淆视听。

那套运算符针对的是整数,所以对Javascript完全无用,因为Javascript内部,全体数字都保存为双精度浮点数。固然应用它们来讲,Javascript不得不将运算数先转为整数,然后再举行演算,那样就大跌了速度。而且”按位与运算符”&同”逻辑与运算符”&&,很轻松模糊。

Javascript完全套用了Java的位运算符,包含按位与&、按位或|、按位异或^、按位非~、左移<<、带符号的右移>>和用0补足的右移>>>。

Javascript完全套用了Java的位运算符,包蕴按位与&、按位或|、按位异或^、按位非~、左移<<、带符号的右移>>和用0补足的右移>>>。

 

9. function语句

那套运算符针对的是整数,所以对Javascript完全无用,因为Javascript内部,全体数字都封存为双精度浮点数。假如运用它们来讲,Javascript不得不将运算数先转为整数,然后再实行演算,那样就下降了快慢。而且”按位与运算符”&同”逻辑与运算符”&&,很轻巧混淆视听。

那套运算符针对的是整数,所以对Javascript完全无用,因为Javascript内部,全数数字都保存为双精度浮点数。假诺运用它们来讲,Javascript不得不将运算数先转为整数,然后再拓展览演出算,那样就猛跌了速度。而且”按位与运算符”&同”逻辑与运算符”&&,很轻松模糊。

9. function语句

在Javascript中定义八个函数,有二种写法:

  1. function语句
  1. function语句

在Javascript中定义三个函数,有两种写法:

  function foo() { }

在Javascript中定义一个函数,有三种写法:

在Javascript中定义多个函数,有两种写法:

  function foo() { }

  function foo() { }

  function foo() { }

  var foo = function () { }

  var foo = function () { }

三种写法完全等价。不过在解析的时候,前一种写法会被解析器自动晋级到代码的尾部,由此违反了函数应该先定义后使用的渴求,所以建议定义函数时,全体使用后一种写法。

  var foo = function () { }

  var foo = function () { }

两种写法完全等价。可是在剖判的时候,前一种写法会被分析器自动跳级到代码的头顶,因而违反了函数应该先定义后选择的渴求,所以提议定义函数时,全部使用后一种写法。

10. 焦点数据类型的包裹对象

二种写法完全等价。可是在条分缕析的时候,前一种写法会被解析器自动晋级到代码的底部,由此违反了函数应该先定义后使用的供给,所以提出定义函数时,全体利用后一种写法。

二种写法完全等价。不过在条分缕析的时候,前一种写法会被分析器自动升级到代码的尾部,因而违反了函数应该先定义后使用的必要,所以建议定义函数时,全体应用后一种写法。

 

Javascript的骨干数据类型包罗字符串、数字、布尔值,它们都有相应的包装对象String、Number和Boolean。所以,有人会如此定义相关值:

  1. 宗旨数据类型的包装对象
  1. 基本数据类型的包裹对象

10. 骨干数据类型的卷入对象

  new String(“Hello World”);

Javascript的为主数据类型蕴涵字符串、数字、布尔值,它们都有相应的包裹对象String、Number和Boolean。所以,有人会这么定义相关值:

Javascript的骨干数据类型包含字符串、数字、布尔值,它们都有相应的包裹对象String、Number和Boolean。所以,有人会这么定义相关值:

Javascript的主干数据类型包涵字符串、数字、布尔值,它们都有相应的包裹对象String、Number和Boolean。所以,有人会这么定义相关值:

  new Number(2000);

  new String(“Hello World”);

  new String(“Hello World”);

  new String(“Hello World”);

  new Boolean(false);

  new Number(2000);

  new Number(2000);

  new Number(2000);

诸如此类写完全没须要,而且拾分费解,由此提出不要采纳。

  new Boolean(false);

  new Boolean(false);

  new Boolean(false);

除此以外,new Object和new Array也不建议选用,能够用{}和[]代替。

那般写不必要,而且那多少个费解,因而建议并非选取。

如此那般写完全没须求,而且丰富费解,因而提议不要采纳。

这么写完全没要求,而且十一分费解,由此提议不用使用。

11. new语句

除此以外,new Object和new Array也不提议选择,能够用{}和[]代替。

其它,new Object和new Array也不建议利用,可以用{}和[]代替。

其它,new Object和new Array也不建议利用,能够用{}和[]代替。

Javascript是世界上第三个被大批量选取的支撑拉姆da函数的言语,本质上属于与Lisp同类的函数式编制程序语言。不过近期世界,五分四上述的技术员都以采纳面向对象编制程序。为了贴近主流,Javascript做出了退让,选用了类的定义,允许根据类生成靶子。

  1. new语句
  1. new语句

 

类是如此定义的:

Javascript是世界上先是个被大批量选取的支撑拉姆da函数的言语,本质上属于与Lisp同类的函数式编制程序语言。不过当前世界,五分四以上的技士都以行使面向对象编制程序。为了临近主流,Javascript做出了退让,选用了类的概念,允许遵照类生成靶子。

Javascript是社会风气上率先个被多量使用的扶助拉姆da函数的语言,本质上属于与Lisp同类的函数式编制程序语言。可是当前世界,百分之九十上述的程序猿都以应用面向对象编制程序。为了贴近主流,Javascript做出了妥胁,接纳了类的定义,允许根据类生成靶子。

11. new语句

  var Cat = function (name) {
    this.name = name;
    this.saying = ‘meow’ ;
  }

类是这么定义的:

类是那般定义的:

Javascript是社会风气上先是个被多量运用的补助拉姆da函数的语言,本质上属于与Lisp同类的函数式编制程序语言。但是最近世界,五分四之上的技士都以应用面向对象编制程序。为了贴近主流,Javascript做出了迁就,选拔了类的定义,允许依据类生成靶子。

下一场,再生成贰个对象

  var Cat = function (name) {
    this.name = name;
    this.saying = ‘meow’ ;
  }

  var Cat = function (name) {
    this.name = name;
    this.saying = ‘meow’ ;
  }

类是如此定义的:

  var myCat = new Cat(‘mimi’);

接下来,再生成叁个对象

下一场,再生成多个对象

  var Cat = function (name) {
    this.name = name;
    this.saying = ‘meow’ ;
  }

这种利用函数生成类、利用new生成对象的语法,其实非常吃惊,一点都不合乎直觉。而且,使用的时候,很轻便忘记加上new,就能化为施行函数,然后无缘无故多出几个全局变量。所以,建议并非这么创造对象,而采纳一种变通方法。

  var myCat = new Cat(‘mimi’);

  var myCat = new Cat(‘mimi’);

接下来,再生成多个目的

DougRuss Crockford给出了贰个函数:

这种利用函数生成类、利用new生成对象的语法,其实非常吃惊,一点都不吻合直觉。而且,使用的时候,很轻松忘记加上new,就能够化为实践函数,然后岂有此理多出几个全局变量。所以,提出不用这么成立对象,而选择一种变通方法。

这种使用函数生成类、利用new生成对象的语法,其实特别离奇,一点都不相符直觉。而且,使用的时候,很轻便忘记加上new,就能够成为奉行函数,然后岂有此理多出多少个全局变量。所以,建议不要那样创设对象,而使用一种变通方法。

  var myCat = new Cat(‘mimi’);

  Object.beget = function (o) {
    var F = function (o) {};
    F.prototype = o ;
    return new F;
  };

DougRuss Crockford给出了一个函数:

DougRuss Crockford给出了三个函数:

这种使用函数生成类、利用new生成对象的语法,其实极其奇异,一点都不适合直觉。而且,使用的时候,很轻便忘记加上new,就能够成为施行函数,然后莫明其妙多出多少个全局变量。所以,提出并非这么创设对象,而选拔一种变通方法。

成立对象时就接纳那么些函数,对原型对象开展操作:

  Object.beget = function (o) {
    var F = function (o) {};
    F.prototype = o ;
    return new F;
  };

  Object.beget = function (o) {
    var F = function (o) {};
    F.prototype = o ;
    return new F;
  };

DougRuss Crockford给出了一个函数:

  var Cat = {
    name:”,
    saying:’meow’
  };

创制对象时就利用这些函数,对原型对象开展操作:

创设对象时就接纳这一个函数,对原型对象实行操作:

  Object.beget = function (o) {
    var F = function (o) {};
    F.prototype = o ;
    return new F;
  };

  var myCat = Object.beget(Cat);

  var Cat = {
    name:”,
    saying:’meow’
  };

  var Cat = {
    name:”,
    saying:’meow’
  };

创制对象时就利用这几个函数,对原型对象开始展览操作:

指标生成后,能够自动对相关属性实行赋值:

  var myCat = Object.beget(Cat);

  var myCat = Object.beget(Cat);

  var Cat = {
    name:”,
    saying:’meow’
  };

  myCat.name = ‘mimi’;

指标生成后,能够自动对有关属性进行赋值:

对象生成后,能够自动对有关属性实行赋值:

  var myCat = Object.beget(Cat);

亚洲必赢官网,12. void

  myCat.name = ‘mimi’;

  myCat.name = ‘mimi’;

目的生成后,能够自动对相关属性实行赋值:

在大部言语中,void都以一体系型,表示并没有值。可是在Javascript中,void是二个运算符,接受三个运算数,并再次来到undefined。

  1. void
  1. void

  myCat.name = ‘mimi’;

  void 0; // undefined

在半数以上言语中,void都是一体系型,表示从未值。然而在Javascript中,void是一个运算符,接受三个运算数,并再次来到undefined。

在大部语言中,void都以一连串型,表示不曾值。不过在Javascript中,void是三个运算符,接受八个运算数,并再次回到undefined。

 

其一命令没什么用,而且很令人困惑,提出避免选用。

  void 0; // undefined

  void 0; // undefined

12. void


这些命令没什么用,而且很令人狐疑,建议制止选拔。

本条命令没什么用,而且很令人狐疑,建议幸免使用。

在好多语言中,void都是一体系型,表示不曾值。然而在Javascript中,void是叁个运算符,接受一个运算数,并重回undefined。

  void 0; // undefined

其一命令没什么用,而且很令人思疑,提议制止使用。

网站地图xml地图