Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.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
Javascript 节点需要全部或仅需要特定的_Javascript_Node.js_Require - Fatal编程技术网

Javascript 节点需要全部或仅需要特定的

Javascript 节点需要全部或仅需要特定的,javascript,node.js,require,Javascript,Node.js,Require,我想知道是否只需要我们想要的特定属性或整个对象更好 例如: 这是我的助手文件 'use strict'; /** * getCallback * return a function used to make callback * @param {callback} callback - the callback function * @returns {Function} */ function getCallback(callback) { let cb = (typeof

我想知道是否只需要我们想要的特定属性或整个对象更好

例如:

这是我的助手文件

'use strict';

/**
 * getCallback
 * return a function used to make callback
 * @param {callback} callback - the callback function
 * @returns {Function}
 */
function getCallback(callback) {
    let cb = (typeof callback === 'function')
        ? callback
        : function() {};

    return cb;
}

/**
 * Random Number function
 * This function give a random number min and max
 * @param {number} [min=0] - min number you can get
 * @param {number} [max=1] - max number you can get
 * @returns {Number}
 */
function randomNumber(min, max) {
    let _min = (min) ? parseInt(min) : 0;
    let _max = (max) ? parseInt(max) : 1;

    return Math.floor((Math.random() * _max) + _min);
}

/**
 * Random String function
 * This function give a random string with the specified length
 * @param {number} length - length of the string
 * @param {string} chars - char you want to put in your random string
 * @returns {String}
 */
function randomString(length, chars) {

    let text = '';
    chars = (chars) ? chars : 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';

    for (let i = 0; i < length; i++) {
        text += chars.charAt(Math.floor(Math.random() * chars.length));
    }

    return text;
}

exports.getCallback = getCallback;
exports.randomNumber = randomNumber;
exports.randomString = randomString;
还是这个

'use strict';

const randomNumber = require('./helpers/util.helper').randomNumber;
const randomString = require('./helpers/util.helper').randomString;

console.log(randomNumber(0, 10));
console.log(randomString(10));

您可能需要整个文件。如果最终更改了util文件中的名称或功能,那么将所有内容拆分将更加困难。我想这有点个人偏好,但在后一个选项中,您更依赖于util的内部。代码片段将非常紧密地耦合在一起。这也遵循了OOP的方式,即使用一个对象,根据需要公开了几种方法

例如,在后一个选项中,您必须在三个位置更改方法名称,而不是第一个选项中的位置

请参见此处有关耦合的更多信息:

'use strict';

const randomNumber = require('./helpers/util.helper').randomNumber;
const randomString = require('./helpers/util.helper').randomString;

console.log(randomNumber(0, 10));
console.log(randomString(10));