变量等于另一个变量,然后等于另一个变量

时间:2017-05-25 作者:Bob

我一直在努力掌握WordPress主题的发展。我对JavaScript和PHP有一些了解。当我试图弄清楚如何使用媒体上传器时,我发现了几篇使用以下代码行的文章:

mediaUploader = wp.media.frames.file_frame = wp.media({
        title: \'Choose a Profile Picture\',
        button: {
            text: \'Choose Picture\'
        },
        multiple: false
    });
对我来说,使用"mediaUploader = wp.media.frames.file_frame = wp.media({});". 为什么不直接使用mediaUploader = wp.media({})? 我很感激在这方面能得到的任何帮助,因为我真的很想理解它。

1 个回复
SO网友:Morgan Estes

在JavaScript(以及PHP)中,您可以通过一次分配多个变量来保存几行代码。在本例中,函数wp.media() 被调用并立即分配给wp.media.frames.file_frame. 作者希望使用相同的值mediaUploader 所以他们在同一个赋值语句中添加了它。

另一种看待它的方式是

// Option 1: single function call, multiple assignments    
wp.media.frames.file_frame = wp.media({...});
mediaUploader              = wp.media.frames.file_frame;

// Option 2: multiple function calls, multiple assignments
wp.media.frames.file_frame = wp.media({...});
mediaUploader              = wp.media({...});
如果要将值指定给全局对象,但希望在不影响全局的情况下局部操纵该值,则此选项非常有用。在这种情况下,作者可以将值指定给wp.media.frames.file_frame 因此,它在那里可用,并使用mediaUploader 在函数内部局部执行,而不影响其他作用域变量的值。

结束

相关推荐

JSON在json_encode发布后无效

在数据库的自定义表中保存JSON时遇到问题。我从数据库中提取一些帖子(+连接的帖子),并将它们添加到一个数组中。这是我的阵列的一部分:array(2) { [\"post\"]=> array(22) { [\"post_author\"]=> string(1) \"1\" [\"post_date\"]=> string(19) \"2015-07-30 13:36:23\