【发布时间】:2013-04-12 15:11:55
【问题描述】:
我想知道 JavaScript 是否有任何功能深度限制。我之所以问,是因为我正在处理一个复杂的应用程序,不幸的是,我们无法更改数据结构。
例如,如果我尝试引用一个变量,例如:
Thi.sIs.An.Except.ionally[345].LongF.unct.ional[z].Refer.ence.Thats[23].Sev.eral.Lay.ers[96].Deep
我有时可以设置和获取Deep 结构及其成员的值(如果它在同一个窗口中),但如果我将此元素包含在另一个类中或尝试从另一个页面引用它并设置 Deep 的成员,那么deep 稍后为其每个成员返回 null 或 undefined。浏览器没有抛出错误,我只是得到了意外的行为。
编辑:我想补充一下,我试图从嵌套框架中引用Deep,在同一域上至少向下三层。例如,框架需要在框架Course 中引用Deep,在主框架的下方两层,但在需要访问它的框架的单独分支上。我们继承的应用程序使用框架,但这些可以更改为 iframe。将这些更改为 iframe 也可以吗?
parent.Topic.Course.Thi.sIs.An.Except.ionally[345].LongF.unct.ional[z].Refer.ence.Thats[23].Sev.eral.Lay.ers[96].Deep
这里有什么我遗漏的吗?或者某种关于 JavaScript 功能深度的参考?
【问题讨论】:
-
@ChristianVarga 是你链接到的一个蹩脚的骗子。答案基本上是一个问题。
-
“尝试从另一个页面引用它” 另一个页面,如在弹出窗口或 Iframe 中?
-
@epascarello 该问题询问了最大嵌套级别,我的评论中的答案指出没有最大嵌套级别。如果这不是对直接问题的直接回答,我不知道是什么。
-
@epascarello - 我仍然不喜欢这个问题作为一个骗子。一个人的不受支持的评论“没有最高级别”不应该被视为所有 JS 实现的全局事实,即使它是正确的(我不知道)。我在 chrome 中对其进行了测试,它至少有 100 万,但这并不意味着无限。就这个问题而言,另一个问题基本上以“您的代码有效”关闭,没有进一步讨论,我不认为这是一个骗局。
标签: javascript