Soy algo nuevo en Javascript y estoy tratando de hacer una biblioteca para mí, así que no tengo que codificarla más tarde. Tengo este código (abajo).
function lib() { let _this = this; this.addstring= (n, d) => { return n + d } } console.log(lib.addstring("foo", "bar")) Cuando se ejecuta el código anterior, me dice que lib.addstring no es una función. ¿Cómo podría escribir esto como una función?
Estás usando esto incorrectamente. No crea una instancia de lib, por lo que no necesita this . Si desea agrupar todo en el objeto lib , simplemente ajuste todo al objeto:
const lib = { addstring(n, d) { return n + d } } console.log(lib.addstring("foo", "bar"))Una buena manera de hacer esto serían los módulos ES6. Con los módulos ES6, crearía un nuevo archivo que usa la palabra clave de export para cada función que desea usar externamente. Aquí hay un ejemplo:
biblioteca.mjs
export function addstring(n, d) { return n + d; }código.js
import {addstring} from './library.mjs'; console.log(addstring("foo", "bar"))