function check_and_kill(selector){
(function checkState(selector){
if(selector.attr('type')){
return false;
}else{
return true;
}
})(),
kill = function(){
if(this.checkState() == false){
console.log('kill all')
}
}
}
$('something').click(){
check_and_kill($(this));
}
我尝试将checkState作为我的构造函数,kill的第二个函数依赖于构造函数返回的值,但是我无法通过选择器,它返回undefined。
答案 0 :(得分:0)
以下是两种情况的模拟。
function Class(str){
(function(str){
document.write(str)
})(str) // Binding value
}
function Class2(str){
(function(str){
document.write(str)
})() // Not binding value
}
(function(){
var a = new Class("Hello World. ");
var b = new Class2(" Hello World ")
})()
答案 1 :(得分:0)
您不会存储构造函数中的值...
checkState = (function checkState(selector){
if(selector.attr('type')){
return false;
}else{
return true;
}
})(),
或者调用kill函数...你也应该仔细查看调用.click的语法....还.click没有引用"这个&# 34;
以下是您正在尝试做的精神的一个工作示例:
https://jsfiddle.net/n2zk1wym/
这是一个可以做你正在尝试做的事情的工作范例,没有所有的花里胡哨。您尝试使用javascript语言的更精细方面是值得称道的,但对于这个特定问题完全没有必要: