簡體   English   中英

比較兩個JavaScript代碼段

[英]Comparing two JavaScript code snippets

這兩個JavaScript代碼片段是否相同?

jQuery(document).ready(function() {
    (function(){
        return 'something';
    })();
});

和這個

jQuery(document).ready(function() {
  return (function() {
    return "something";
  })();
});

我正在嘗試coffescript。 將上面的第一個代碼轉換為coffescript並將其轉換回JS給出了第二個代碼段。 所以,我想知道它們是否完全相同。 是不是從與閉包相關的函數中返回函數?

他們會是一樣的,是的。 除了第二個將使用1個單位的堆棧內存。

這取決於.ready方法是否使用其回調的返回值。 如果是,那么示例是不同的。 如果返回值被忽略則其相同。

如果你停下來想一想,你可以“簡化”立即調用函數表達式。 這樣做會將第一個例子變為

jQuery(document).ready(function() {
    'something';
});

而第二個進入

jQuery(document).ready(function() {
    return 'something';
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM