如果您尝试使用 Chrome 加载:http : //sdqdsqdqsdsqdsqd.com/
您将获得:
ERR_NAME_NOT_RESOLVED
Run Code Online (Sandbox Code Playgroud)
我希望使用书签,能够获取当前域名并将其重定向到 whois 页面,以检查该域是否可用。
我在控制台中尝试过:
window.location.href
Run Code Online (Sandbox Code Playgroud)
但它输出:
"data:text/html,chromewebdata"
Run Code Online (Sandbox Code Playgroud)
有没有办法检索失败的 URL?
有谁知道为什么在字符串上调用Array.sort是违法的?
[].sort.call("some string")
// "illegal access"
Run Code Online (Sandbox Code Playgroud)
但是调用Array.map,Array.reduce或Array.filter是可以的吗?
[].map.call("some string", function(x){
return String.fromCharCode(x.charCodeAt(0)+1);
});
// ["t", "p", "n", "f", "!", "t", "u", "s", "j", "o", "h"]
[].reduce.call("some string", function(a, b){
return (+a === a ? a : a.charCodeAt(0)) + b.charCodeAt(0);
})
// 1131
[].filter.call("some string", function(x){
return x.charCodeAt(0) > 110;
})
// ["s", "o", "s", "t", "r"]
Run Code Online (Sandbox Code Playgroud) 我试图在没有jQuery的情况下重现jQuery的函数ajaxComplete和ajaxStart,这样它们就可以在没有库依赖的任何环境中使用(这是一个特殊的用例).这些函数允许在任何ajax请求之前和之后调用事件侦听器.在我的示例中,我将它们称为preAjaxListener和postAjaxListener.
我试图挂接到XMLHttpRequest对象和覆盖/装潢完成它open
和send
.是的,我知道这很脏.
XMLHttpRequest.prototype.open = (function(orig){
return function(a,b,c){
this._HREF = b; // store target url
return orig.apply(this, arguments); // call original 'open' function
};
})(XMLHttpRequest.prototype.open);
XMLHttpRequest.prototype.send = (function(orig){
return function(){
var xhr = this;
_core._fireAjaxEvents('pre', xhr._HREF); // preAjaxListener fires
var rsc = xhr.onreadystatechange || function(){}; // store the original onreadystatechange if it exists
xhr.onreadystatechange = function(){ // overwrite with custom function
try {
if (xhr.readyState == 4){
_core._fireAjaxEvents('post', xhr._HREF); // postAjaxListneer should fire …
Run Code Online (Sandbox Code Playgroud) 我有组件搜索器功能SearchArticle(),它正确使用this.state.search与组件安装后的DEFAULT值(控制台显示搜索...:DEFAULT).但是当我用handleKeyPress(e)更新this.state.search时,它们的相同函数SearchArticle()在更新为e.target值之前使用prev状态(控制台再次显示Searching ...:DEFAULT).不知道如何解决它.
class Searcher extends Component {
constructor(props) {
super(props);
this.state = {
article: [], search: "DEFAULT"
};
}
searchArticle() {
console.log('Searching...: ', this.state.search)
}
handleKeyPress = (e) => {
if (e.key === 'Enter') {
this.setState({search: e.target.value});
this.searchArticle();
}
}
componentDidMount() {
this.searchArticle();
}
render() {
return (
<div className="row">
Search: <input onKeyPress={this.handleKeyPress} type="text" />
</div>
)
}
}
Run Code Online (Sandbox Code Playgroud)