首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么将变量赋值给自己,memory=memory?

为什么将变量赋值给自己,memory=memory?
EN

Stack Overflow用户
提问于 2017-07-26 10:11:40
回答 1查看 72关注 0票数 0

我目前正在分析一些javascript shell代码。下面是这个脚本中的一行:

代码语言:javascript
运行
复制
function having()
{
    memory = memory;
    setTimeout("F0VTp03Y()", 2000);
}

我不太明白内存=内存,给自己分配一个变量有什么意义。我会感谢你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-26 10:37:01

我能想到将变量赋值给自己的唯一原因是变量影影

当在某个作用域中声明的变量(决策块、方法或内部类)中声明的变量与在外部作用域中声明的变量的名称相同时,就会发生变量隐藏。在标识符级别(名称,而不是变量),这称为名称掩蔽。该外部变量被内部变量称为阴影,而内部标识符则被称为掩蔽外部标识符。这可能会导致混淆,因为可能不清楚隐藏变量名称的后续用途是哪个变量,这取决于语言的名称解析规则。

但在您的示例中,memory变量不是函数的参数,因此没有任何意义。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45323907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档