Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
case语句中的Javascript箭头函数_Javascript_Switch Statement_Arrow Functions - Fatal编程技术网

case语句中的Javascript箭头函数

case语句中的Javascript箭头函数,javascript,switch-statement,arrow-functions,Javascript,Switch Statement,Arrow Functions,我想知道如何在case语句中实现arrow函数。 请问,如果我做了类似的事情,如何将示例15转化为“结果” var result = num.calculate('+'); var num={ x:12, y:3, 计算:功能(操作){ var-fn; 开关(操作){ 格“+”: fn=函数(){ 返回这个.x+这个.y }; 打破 案例'-': fn=函数(){ 返回这个.x-this.y }; 打破 违约: fn=函数(){}; } 返回fn(); } }调用上下文中存在x和y属性,nu

我想知道如何在case语句中实现arrow函数。 请问,如果我做了类似的事情,如何将示例15转化为“结果”

var result = num.calculate('+');
var num={
x:12,
y:3,
计算:功能(操作){
var-fn;
开关(操作){
格“+”:
fn=函数(){
返回这个.x+这个.y
};
打破
案例'-':
fn=函数(){
返回这个.x-this.y
};
打破
违约:
fn=函数(){};
}
返回fn();
}

}
调用上下文中存在
x
y
属性,
num
对象-引用
num.x
,或者调用函数时,使用
fn.call(num)
,以便函数中的
this
引用
num
对象:

var num={
x:12,
y:3,
计算:功能(操作){
var-fn;
开关(操作){
格“+”:
fn=函数(){
返回这个.x+这个.y
};
打破
案例'-':
fn=函数(){
返回这个.x-this.y
};
打破
违约:
fn=函数(){};
}
返回fn.call(num);
}
}
risult=num.calculate('+');

控制台日志(risult)
function(){返回this.x+this.y}
变成
()=>{返回this.x+this.y}
()=>this.x+this.y
我给你做了一个代码片段。请用输入和预期输出做一个比较。我不相信复制品是准确的。似乎不是说
calculate
是一个箭头函数,而是
calculate
里面有箭头函数。问题是他无法访问这些函数中的
x
y
。这个骗局掩盖了这一切。太好了!问题在3分钟内解决!!!:)非常感谢你