- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我可能在 ColdFusion 2016 中发现了一个错误。我有两个功能。第一个函数有一个从 1 迭代到 n 的循环,并将第二个函数的返回值(也是一个数组)插入一个数组。我注意到了;索引值为1,调用函数并将值插入数组,索引值是循环的结束值。这是一个错误吗?
<cfscript>
public array function fnc1(required array p1, required array p2, required numeric pSize, required numeric qSize, required numeric dSize){
iterationNum = pSize/2;
point = randRange(1, qSize-1);
for(i = 1; i <= iterationNum; i++){
writeOutput(i); // prints: 1
pop[i] = fnc2(p1[i], p2[i], point);
writeOutput(i); // prints: iterationNum value
writeDump(var = pop[i], label = "pop-"&i);
}
writeDump(var = pop, label="pop");
}
public array function fnc2(required array p1, required array p2, required numeric point){
n = arrayLen(p1);
concatArr = arrayNew(1);
for(i = 1; i <= point; i++){
concatArr[i] = p1[i];
}
for(i = point + 1; i <= n; i++){
concatArr[i] = p2[i];
}
writeDump(var=concatArr, label="Concated Array");
return concatArr;
}
</cfscript>
最佳答案
cfc
内变量的默认作用域不仅仅是函数。但它是 cfc 范围内的。这通常是有问题的。
同样,cfc
之外的变量的默认范围是请求范围。这通常很有用。
有两种方法可以限制 cfc
内变量的范围。一种是使用关键字var
,另一种是使用local.
要说它们有何不同,就说来话长了。下面的示例解决方案始终使用 var。如果您想了解有关 var
与 local.
的更多信息,请单击此处:Scoping: Local vs Var
<cfscript>
public array function fnc1(required array p1, required array p2, required numeric pSize, required numeric qSize, required numeric dSize){
var iterationNum = pSize/2;
var point = randRange(1, qSize-1);
for(var i = 1; i <= iterationNum; i++){
writeOutput(i); // prints: 1
pop[i] = fnc2(p1[i], p2[i], point);
writeOutput(i); // prints: iterationNum value
writeDump(var = pop[i], label = "pop-"&i);
}
writeDump(var = pop, label="pop");
}
public array function fnc2(required array p1, required array p2, required numeric point){
var n = arrayLen(p1);
var concatArr = arrayNew(1);
for(var i = 1; i <= point; i++){
concatArr[i] = p1[i];
}
for(var ii = point + 1; ii <= n; ii++){
concatArr[ii] = p2[ii];
}
writeDump(var=concatArr, label="Concated Array");
return concatArr;
}
</cfscript>
关于for-loop - CFSCRIPT - For 循环递增索引错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48963631/
我在 ColdFusion 中运行一个非常简单的查询。如果我在 cfquery 标签中运行它,它会在大约 20 毫秒内完成。如果我在 cfscript 中使用查询对象,则需要大约 500 毫秒才能完成
请考虑以下文档: http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=CFScript_11.html#1161053
我可能在 ColdFusion 2016 中发现了一个错误。我有两个功能。第一个函数有一个从 1 迭代到 n 的循环,并将第二个函数的返回值(也是一个数组)插入一个数组。我注意到了;索引值为1,调用函
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: How to do a cfdump inside a cfscript tag? 我是 Coldfusio
我有一个用 java 编写的自定义类,如果我使用硬编码数据,它可以正常工作,但我想从 URL 而不是硬编码获取数据 scraper = createObject("java", "Access
我最近注意到我们的产品有一些“短”邮政编码的错误邮政编码位置(纬度和经度坐标) - 即“AB10”而不是“ABD 1PT”等。 邮政编码数据库/表用于在 Google map 上生成图钉,我现在发现,
所以我正在使用 for in 循环遍历结构数组 for(item in array) { processStruct(item) } 非常简单,我要做的是在 for in 循环中获取当前索引并
我需要在我的 SQL 查询中添加 if 条件。我想出了这个解决方案,但它不起作用,我不知道为什么。 local.platformId = arguments.platformId ? "AND pla
如何使用 try-catch 捕获自定义异常在 cfscript 中? try-catch在 cfscript 中。什么应该进入catch()陈述? try { m
我正在寻找从 cfscript 中的不同组件动态调用方法的最佳方法。请注意,它与 中的方法有关。不同零件。到目前为止,我已经尝试了 3 种不同的方法,但它们似乎都不是我想要的: 所有的案例都写在一个组
我已经习惯了 ColdFusion。看来 cfscript 使开发人员的生活更轻松。 在我的 cfscript 函数中,我需要: 运行查询“SELECT A, B from MyTable” 对于此查
我是 cfsavecontent 的忠实粉丝,因为我们可以将长文本转换为变量(事件我可以在其中转储)。但最近更多人开始使用 CFSCRIPT 并且无法弄清楚如何在 cfscript 标签中使用它。 有
可以在cfcomponent中使用cfdump吗? 可以在cfscript中使用cfdump吗? 我知道分析器不存在,那么如何才能发出insde cfcomponent函数的值 cfscript? 我
我正在尝试循环一个名为 meta 的数组。 我在检查元素是否存在时遇到问题。在此数组中,有时存在长度,有时不存在。我正在尝试让这样的东西起作用: for (i=1;i LTE ArrayLen(met
今天,当我试图增强我的应用程序的性能时,根据一些 ColdFusion 开发人员的建议,我将一些基于标签的代码修改为基于 cfscript 的代码。 但我没有看到任何性能增强。它实际上似乎有点慢。 最
我觉得这是 CF9 中的一个错误,从这个来看:How to specify argument attributes in CFscript? (CF9) 但是,如果没有,我将在 CF9(纯)中编写一个
我正在学习使用 . 有什么办法可以在 中记录一些消息或值吗? ? 喜欢外面我可以用 , 有没有什么办法或标记类似的东西,我可以用来打印日志文件中的消息 > 谢谢 最佳答案 ColdFusion
是否有一种简单的方法可以使用 cfscript 将逗号分隔的字符串拆分为数组? 类似于以下 JavaScript 的内容: var a = "a,b,c".split(","); 最佳答案 var a
这是我的代码: var qryStr = " UPDATE templates_email SET title = :title, test_email
今年我带着一个大问题开始。当我做的时候 myName = "Henry"; myCustomFunction( [ myName, "Thierry" ] ); 它会抛出类似myName is und
我是一名优秀的程序员,十分优秀!