字符串和其他值只是放在代码中

时间:2014-03-09 11:28:38

标签: javascript

我正在做some reading about JavaScript并遇到了一个名为"use strict";的内容。 这不是这个问题的关键,它只是在代码中放置一个字符串的一个例子。我感兴趣的是我可以在自己的代码行中放置一个字符串(或者实际上是任何其他值) JavaScript和它绝对没有(从我能说的)。例如,据我所知,以下代码没有用处:

(function(){
    "random string";
    8;
    true;
    [1,2,3];
    { "key": "value" }
}())

为什么我可以这样做,它的目的是什么?

我也意识到返回值的函数有效地执行此操作(我是否正确?):

// Some code...

function doSomething() {
    // Do some stuff
    return true;
}

doSomething();

// Some more code...

这有效地评估了吗?

// Some code...

function doSomething() {
    // Do some stuff
    return true;
}

true;

// Some more code...

1 个答案:

答案 0 :(得分:1)

没有任何编程语言可以完全保护您免于做无意义的事情。你的例子可以修复吗?第一个是的。但它会使语言的语义复杂化。

以下被视为“表达”。规则是表达式可以放在代码中的任何位置,“评估”到一个值,并且可以是其他表达式的一部分。注意func1()也是一个表达式,并且非常有用。

"random string"
8
true
[1,2,3]
{ "key": "value" }
func1()

第二种情况......是的,这是基本上发生的事情。还可以禁止显式返回值的函数被称为“单独”。但是有很多情况下函数有副作用(ex更改DOM,或更改外部变量),它返回的值(例如,它是否成功,有多少元素被更改)可能会,也可能不会需要。