守候你守候我
2021-12-23 15:48:08
我正在嘗試構(gòu)建一個(gè)簡(jiǎn)單的自動(dòng)分級(jí)器來檢查兩個(gè) javascript 匹配文件。這是一個(gè)可能的練習(xí)示例:var http = require('http');http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World!');}).listen(8000, () => {console.log('Node server is running..');});這是上述練習(xí)的解決方案:var http = require('http');var dt = require('./myfirstmodule');http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/plain'}); res.write("The date and time are currently: " + dt.myDateTime()); res.end('Hello World!');}).listen(8000, () => {console.log('Node server is running..');});你知道在 Node 中檢查練習(xí)文件是否與解決方案匹配的好方法嗎?完全匹配文件可能不是一個(gè)好主意,因?yàn)樗鼈冎g可能存在空格并且仍然是一個(gè)有效的解決方案。提前致謝。
1 回答

藍(lán)山帝景
TA貢獻(xiàn)1843條經(jīng)驗(yàn) 獲得超7個(gè)贊
您可以使用讀取每個(gè)文件的內(nèi)容,fs.readFileSync()然后使用包字符串相似度來比較它們。
安裝字符串相似度:
npm install string-similarity --save
然后在你的代碼中:
const fs = require('fs');
const stringSimilarity = require('string-similarity');
let exercise = fs.readFileSync('path/to/file/exercise.js');
let solution = fs.readFileSync('path/to/file/solution.js');
var similarity = stringSimilarity.compareTwoStrings(exercise, solution);
console.log(similarity); //Returns a fraction between 0 and 1
添加回答
舉報(bào)
0/150
提交
取消