在Chrome控制台中执行此代码段:
function foo() {
return typeof null === 'undefined';
}
for(var i = 0; i < 1000; i++) console.log(foo());Run Code Online (Sandbox Code Playgroud)
应打印1000次false,但在某些机器上将打印false多次迭代,然后true用于其余部分.
为什么会这样?这只是一个错误吗?
我正在使用PHPStorm 8.0.3,在我的CSS文件中,我收到了font-family规则警告.
此检查验证CSS font-family属性是否包含通用字体名称作为后备替代.
我添加了如下字体:
.my_text {
font-family: 'DINPro-Medium';
}
@font-face {
font-family: 'DINPro-Medium';
src: url(font/DINPro-Medium.eot);
src: url(font/DINPro-Medium.eot?#iefix) format('embedded-opentype'),
url(font/DINPro-Medium.ttf) format('truetype'),
url(font/DINPro-Medium.woff) format('woff'),
url(font/DINPro-Medium.svg#DINPro-Medium) format('svg');
font-weight: normal;
font-style: normal;
}
Run Code Online (Sandbox Code Playgroud)
我无法理解问题所在.
例如,您可以在Chrome控制台中执行此脚本(我使用的是版本51.0.2704.103 m.)并且每次您将获得随机(首先得到的)真值和假值的数量:
function foo(){
return typeof null === 'undefined';
}
for (var i = 0; i<1000; i++) console.log(foo());Run Code Online (Sandbox Code Playgroud)
例如:
在不同的OS /系统上,此错误出现在不同的迭代中.
我意识到这个问题几乎没有实际意义,但我想知道是什么原因导致了这种奇怪的行为,并且取决于迭代次数的变化?
另外,typeof null在出现此错误的情况下使用代码时应该记住什么?
我必须删除在网格中选择某些行的功能.
我使用CheckboxModel
selModel: Ext.create( 'Ext.selection.CheckboxModel', {
mode: 'SIMPLE'
} )
Run Code Online (Sandbox Code Playgroud)
要禁用选择,我使用beforeselect事件
beforeselect: function ( row, model, index ) {
if ( model.data.id == '3' ) {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
为了隐藏复选框,我使用特定的行来进行行和css规则
viewConfig: {
getRowClass: function( record, index ) {
var id = record.get('id');
return id == '3' ? 'general-rule' : '';
}
}
.general-rule .x-grid-row-checker {
left: -9999px !important;
position: relative;
}
Run Code Online (Sandbox Code Playgroud)
也许这不是达到预期效果的最佳方式,但对我的任务来说,它可行.
但是,出现另一个问题:网格标题中的全选/取消全选复选框停止工作.当您第一次单击此ckechbox时,除了那些不应该选择的行之外的所有行都将选择,但如果再次单击,则不会发生任何操作.显然,系统会尝试重新选择所有行,因为未选中.
有没有更好的方法来解决这个问题?或者如何用这种方法解决问题.
唯一想到的是 - 您需要重写Select All/Unselect All功能复选框,但我不知道如何做到这一点.
在此先感谢您的回答,如果我提出的问题不符合规则,我会道歉.
出于调试目的,我想跟踪某个组件的所有事件(组合,表单等),这样我就可以看到为此组件触发的时间和事件.
是否有一种通用的方法来跟踪所有事件而不创建特定的侦听器?
我们可以使用filter_vars()with FILTER_VALIDATE_URL和flags:
FILTER_FLAG_SCHEME_REQUIRED
FILTER_FLAG_HOST_REQUIRED
FILTER_FLAG_PATH_REQUIRED
FILTER_FLAG_QUERY_REQUIRED
Run Code Online (Sandbox Code Playgroud)
FILTER_VALIDATE_URL根据RFC 2396将值验证为URL,并在内部使用parse_url()并需要方案(协议)和主机部分。
如果我还想检查路径和查询零件,则可以这样使用filter_vars:
filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED | FILTER_FLAG_QUERY_REQUIRED);
Run Code Online (Sandbox Code Playgroud)
但是FILTER_FLAG_SCHEME_REQUIREDand FILTER_FLAG_HOST_REQUIRED标志的用途是什么?无论我们是否指定这些标志,似乎无论如何都将检查主机部件。
例如,如下过滤有效的相对URL:
filter_var('test1/2.html', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED);
Run Code Online (Sandbox Code Playgroud)
返回false。
javascript ×3
extjs ×2
v8 ×2
css ×1
extjs4 ×1
fonts ×1
php ×1
phpstorm ×1
url ×1
validation ×1