亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從外部文件調用函數的 JavaScript 給出 .is not a fuction 錯誤

從外部文件調用函數的 JavaScript 給出 .is not a fuction 錯誤

GCT1015 2023-04-20 09:57:53
因此,當我使用 require('fileName.js') 將外部 JavaScript 文件添加到我的主 index.js 文件時。在 index.jsconst caltor = require('./calculate.js');console.log(caltor.adding(5,7));在我的 calculate.js 中function adding (i,y){        return i+y;}順便說一句,我正在使用 nodejs 來執行。錯誤說:console.log(caltor.adding(5,7));                   ^TypeError: caltor.adding is not a function
查看完整描述

2 回答

?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

您需要在“calculate.js”文件中導出函數“adding”。

module.exports = adding;

在您的 index.js 文件中,無需調用 caltor.adding() (假設您只從“calculate.js”中導出一個函數)。

console.log(caltor(5,7));


查看完整回答
反對 回復 2023-04-20
?
胡說叔叔

TA貢獻1804條經驗 獲得超8個贊

Node.js 模塊不會自動導出它們的頂級作用域變量/函數。


要導出值,您有兩種方法:


將其添加到exports對象


節點模塊有一個預定義的變量exports,它的值被導出。將您的功能添加到其中:


function adding (i,y){

  return i+y;

}


exports.adding = adding

const caltor = require('./calculate.js');


console.log(caltor.adding(5,7));

您也可以通過這種方式導出多個值,只需確保為它們指定不同的名稱即可:


function adding (i,y){

  return i+y;

}


exports.adding = adding


function subtracting (i,y){

  return i-y;

}


exports.subtracting = subtracting 

const caltor = require('./calculate.js');


console.log(caltor.adding(5,7));

  console.log(caltor.subtracting(5,7));

通過分配給提供“默認”導出module.exports


如果要導出單個值,可以將其分配給module.exports. 在這種情況下,它成為 返回的值require。


請注意,在分配 之后module.exports,在變量上定義屬性exports將不再有效。exports分配給變量也不會導出任何東西。


function adding (i,y){

  return i+y;

}


module.exports = adding

const adding = require('./calculate.js');


console.log(adding(5,7));


查看完整回答
反對 回復 2023-04-20
  • 2 回答
  • 0 關注
  • 181 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號