相关疑难解决方法(0)

没有操作的JavaScript约定是什么?

没有操作的JavaScript约定是什么?

  • 一个选项只是一个空函数: pass
  • jQuery提供function() {},它只调用上面的空函数.
  • 简单地输入$.noop()或者值是否可以接受false

在上下文中...所有这些工作都没有在Chrome中引发错误:

var a = 2;
(a === 1) ? alert(1) : function() {};
(a === 1) ? alert(1) : $.noop();
(a === 1) ? alert(1) : false;
(a === 1) ? alert(1) : 0;
Run Code Online (Sandbox Code Playgroud)

编辑:很多人回答说,"不要这样做!改变代码结构!" 这让我想起了有人问如何嗅探浏览器的帖子.他接到一连串的帖子说:"不要这样做!它是邪恶的",但没有人告诉他如何嗅探浏览器.这不是代码审查.想象一下,您正在处理无法更改的遗留代码,如果没有传入某些函数,它将丢失一个错误.或者,简单地说,这就是客户想要的方式,他们付钱给我.所以,请尊重,请回答这个问题:在JavaScript中指定"无操作"功能的最佳方法是什么?

编辑2:其中一个怎么样?

true;
false;
0;
1;
null;
Run Code Online (Sandbox Code Playgroud)

javascript function

104
推荐指数
5
解决办法
6万
查看次数

是值是原始的还是盒装的

可以typeof用来确定值是原始的还是盒装的.

考虑:

typeof "foo"; // "string"
typeof new String("foo"); // "object"
Run Code Online (Sandbox Code Playgroud)

结合Object.prototype.toString我们可以定义以下两个函数

var toString = Object.prototype.toString;

var is_primitive_string = function(s) {
  return toString.call(s) === "[object String]" && typeof s === "string";
};

var is_boxed_string = function(s) {
  return toString.call(s) === "[object String]" && typeof s === "object";
};
Run Code Online (Sandbox Code Playgroud)

是否有任何使用情况下这两个功能呢?(或者类似的功能Number,Boolean等等).

这个问题背后的概念来自TJCrowder的以下评论.

我们是否应该关心我们拥有的价值是原始的还是盒装的?

javascript boxing typeof

16
推荐指数
1
解决办法
2274
查看次数

当一个功能的工作完成

我正在使用jQuery插件,它从网址获取数据,提取,计算和写入一些数据div.

我希望将这些div内容复制到另一个div,当这些功能完成它的工作时.

例如:

$("#div1").myfunction(); // it gets and calculates data and adds to #div1 . it needs 2-3 seconds to be done
var contents = $("#div1").html(); // when myfunction() done, copy contents
$("#div2").html(contents);
Run Code Online (Sandbox Code Playgroud)

当我运行该代码时,我没有新的内容#div2.

javascript jquery

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

在Javascript中将匿名函数作为回调传递

有没有办法在Javascript中将匿名函数作为自定义回调函数传递?我有这个代码:

function notifyme(msg){
    console.log(msg)
}

notifyme("msg", function(){
    //do some custom redirect logic    
});
Run Code Online (Sandbox Code Playgroud)

我正在尝试上面的代码,它正在执行notifyme函数,但没有进一步使用重定向代码.我知道我可以将函数名称作为回调传递,但是我没有可以通过的特定函数.这就是为什么他们发明了我猜的匿名函数.

如果有办法做到这一点真的很好.

javascript callback anonymous-function

5
推荐指数
2
解决办法
9149
查看次数

JavaScript:可选回调?

我编写了一个函数,它有3个参数,其中一个是回调函数.如何在不使用回调参数的情况下编写另一个函数的情况下,如何使回调成为可选参数?

function myFunction(arg1, arg2, callback){
    // do something

    // callback() if it has been passed
}
Run Code Online (Sandbox Code Playgroud)

javascript

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