在javascript函数中将此作废的目的是什么

时间:2019-02-11 10:35:50

标签: javascript node.js

JavaScript函数void this中的end的用途是什么

words = ''; wordless=' ';

function say_it(word) {
     return word ? smothered_mouthfuls(word) : end();
}

function smothered_mouthfuls(word) {
    word = words ? wordless + word : word;
    words = words + word;
    return say_it;
 }

 function end() {
     return  void this,words;
 }

任何人都知道void this的目的,谢谢。

1 个答案:

答案 0 :(得分:1)

您拥有的是voidoperator

  

void运算符对给定的 expression 求值,然后返回undefined

结合comma operator

  

逗号运算符评估其每个操作数(从左到右)并返回最后一个操作数的值。

return void this, words;

像这样

return (void this, words); // return words

实际上,它看起来像是对代码的干扰,没有this表达式的含义。

如果this的调用调用了某些内容,则这是必要的,否则看起来像代码气味,其中某些代码在做某些事情而没有明确提及。

var words = '', wordless=' ';

function say_it(word) {
    return word ? smothered_mouthfuls(word) : end();
}

function smothered_mouthfuls(word) {
    word = words ? wordless + word : word;
    words = words + word;
    return say_it;
}

function end() {
    void this;     // or not
    return  words;
}
   
console.log(say_it('foo')());
console.log(say_it('bar')());
console.log(say_it('baz')());