请参阅http://jsperf.com/in-vs-member-object-access
基本上,为什么检查if ('bar' in foo) {}明显慢于if (foo.bar !== undefined) {}?
我正在使用browserify使用CommonJS样式的依赖项来捆绑我的前端javascript.例如,我有:
$ = require('jquery/dist/jquery'); // v2.1.0-beta2
_ = require('underscore');
Backbone = require('backbone');
Run Code Online (Sandbox Code Playgroud)
但是,当browserify捆绑我遇到的依赖项时,会出现以下控制台错误:
Error: jQuery requires a window with a document
Run Code Online (Sandbox Code Playgroud)
看看jQuery代码,我看到它正试图this用于全局window.
(function( window, factory ) {
....
}(this, function( window ) {
Run Code Online (Sandbox Code Playgroud)
由于browserify包装了所有依赖项,因此this是一个object,而不是window.
有趣的是jQuery> = 2应该与CommonJS兼容.但是,问题是browserify如何包装依赖项.有人解决了这个问题吗?
我正在寻找一种最小的方法来小写一个短语中不属于AND的所有字母.我想离开AND其原来的情况下,无论是and或AND不应该改变.
例如,barack AND obama应该测试等于Barack AND Obama但不是barack and obama.(注意和中的案例差异)
这是一种方法,但我想知道是否有一种更短的方式或者更确切地说是一种避免迭代器的方法:
var str = 'Barack AND Obama'; // should be barack AND obama after
str = str.split(/\s+/g).map(function (s) {
return s.toLowerCase() != 'and' ? s.toLowerCase() : s;
}).join(' ');
Run Code Online (Sandbox Code Playgroud) 尝试过string.replace(/\u10000-\u10FFFF/g, ''),但遗憾的\u是不支持10000+
如果我有以下设置,我发现PHP5没有调用__destruct()函数:
class test {
__destruct()
{
echo 'hehe';
exit;
}
}
header('Location: http://test.com/');
exit;
它从不调用destruct函数