构造函数不应该这样写吗???

构造函数不应该这样写吗???

var add = new Function(n,m){
    // 构造函数
    return n + m;
}
var subtract = new Function(n,m){
    // 构造函数
    return n - m;
}
var multiply = new Function(n,m){
    // 构造函数
    return n * m;
}
var divide = new Function(n,m){
    // 构造函数
    return n / m;
}
document.write(subtract(add(multiply(21, 32), multiply(24, 3))));


正在回答

登陆购买课程后可参与讨论,去登陆

4回答

语法不对

//创建名为obj1的函数对象实例,可以传入任意字符串形式的参数,最后一个参数始终为函数体
var obj1 = new Function('n','m','console.log(n+m)');
obj1(1,2);
obj1.name='007';
console.dir(obj1);


//创建名为Fn的构造函数
function Fn(){
this.add=function(n,m){
return n+m;
}
}


陌__路 2019-06-25 15:37:00

Uncaught SyntaxError: Unexpected token  浏览器会报错的

a_agiao 2019-05-18 15:20:57

var add = new Function('a','b','return a+b');

var subtract = new Function('a','b','return a-b');

var multiply = new Function('a','b','return a*b');

var divide = new Function('a','b','return a/b');


语法就是这么规定的

  • 提问者 007号学员 #1
    没有的事把,我看过其他教程,是我写的那种写法。。。也是醉了太容易混淆了,JS
    2019-05-18 15:28:06
  • a_agiao 回复 提问者 007号学员 #2
    兄弟,你的这个写法,你能运行吗?
    2019-05-18 15:37:08
提问者 007号学员 2019-05-18 09:35:40
// 这个为什么大家都写这样????有点搞不懂
// var add2 = new Function();


  • 这个是构造函数的写法啊,你上面的就语法错误,都没法运行。 构造函数是new+函数名+(); 普通函数是function+函数名+()+{};
    2019-05-26 18:53:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师