小编Jea*_*ent的帖子

JavaScript:对象重命名密钥

是否有一种聪明的(即优化的)方法来重命名javascript对象中的键?

一种非优化的方式是:

o[ new_key ] = o[ old_key ];
delete o[ old_key ];
Run Code Online (Sandbox Code Playgroud)

javascript rename key object

255
推荐指数
19
解决办法
24万
查看次数

JavaScript数组rotate()

我想知道旋转JavaScript数组的最有效方法是什么.

我想出了这个解决方案,其中正向n旋转数组向右旋转,负向左旋转n(-length < n < length):

Array.prototype.rotateRight = function( n ) {
  this.unshift( this.splice( n, this.length ) )
}
Run Code Online (Sandbox Code Playgroud)

然后可以这样使用:

var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
months.rotate( new Date().getMonth() )
Run Code Online (Sandbox Code Playgroud)

我上面的原始版本有一个缺陷,正如Christoph在下面的评论中指出的那样,正确的版本是(额外的返回允许链接):

Array.prototype.rotateRight = function( n ) {
  this.unshift.apply( this, this.splice( n, this.length ) )
  return this;
}
Run Code Online (Sandbox Code Playgroud)

是否有更紧凑和/或更快的解决方案,可能在JavaScript框架的上下文中?(以下提出的版本都没有更紧凑或更快)

是否有任何JavaScript框架,内置数组旋转?(还没有人回答)

javascript arrays rotation

65
推荐指数
8
解决办法
6万
查看次数

如何使用脚本使用access ="remote"属性定义ColdFusion函数?

目标是允许使用脚本而不是CFML标记定义.cfm或.cfc的所有函数.

我想改变这个:

<cffunction name="foo" access="remote">
    <cfscript>
        ....
    </cfscript>
</cffunction>
Run Code Online (Sandbox Code Playgroud)

进入这样的事情:

<cfscript>
    function remote foo() {
        ....
    }
</cfscript>
Run Code Online (Sandbox Code Playgroud)

或其他东西,只要它可以在打开和关闭cfscript标签内完成.

coldfusion

9
推荐指数
2
解决办法
3287
查看次数

当使用JavaScript来阻止表单提交时,强制Safari表单自动填充条目

我希望Safari的表单自动填充功能可以在我的网络应用程序中处理表单.我们阻止了所有表单的提交事件,而是通过XHR(Ajax)POST将数据发送到服务器.

问题是,Safari在其自动填充(自动填充)"数据库"中创建新条目的默认值要求表单的提交事件一直触发冒泡.从我的测试中,这是我总结并用于表单GET和POST方法.

Firefox中存在此问题; 我们所有的表单都保留了为每个字段"提交"的先前值.这是我们在Safari中想要的行为.

在我们的应用程序中,用户将在多个会话中多次填写相同的表单.在某些情况下,浏览器可以根据用户之前提交的值自动完成(在Safari的情况下自动填充)这些字段.

我想知道是否有其他人遇到过Safari这个问题?更好的是,如果他们有一个解决方案(即使特定于Safari)告诉(或强制)Safari将表单字段值保存到其自动填充数据库中,即使表单的提交事件被阻止了?

我在DOM中尝试过preventDefault()更高版本,让提交事件冒泡到表单的父DOM节点; 行为没有区别.这可能只是Safari中的一个bug ...

javascript forms safari autocomplete form-submit

5
推荐指数
1
解决办法
1251
查看次数