4.1 KiB
4.1 KiB
id, title, challengeType, videoUrl, forumTopicId, localeTitle
id | title | challengeType | videoUrl | forumTopicId | localeTitle |
---|---|---|---|---|---|
56533eb9ac21ba0edf2244bd | Passing Values to Functions with Arguments | 1 | https://scrimba.com/c/cy8rahW | 18254 | Передача значений в функции с аргументами |
Description
param1
и param2
: function testFun (param1, param2) {Затем мы можем вызвать
console.log (param1, param2);
}
testFun
: testFun("Hello", "World");
Мы передали два аргумента: "Hello"
и "World"
. Внутри функции param1
будет равен «Hello», а param2
будет равен «World». Обратите внимание, что вы можете снова вызвать testFun
с разными аргументами, и параметры будут принимать значение новых аргументов.
Instructions
- Создайте функцию
functionWithArgs
которая принимает два аргумента и выводит их сумму в консоль dev. - Вызовите функцию с двумя числами в качестве аргументов.
Tests
tests:
- text: <code>functionWithArgs</code> should be a function
testString: assert(typeof functionWithArgs === 'function');
- text: <code>functionWithArgs(1,2)</code> should output <code>3</code>
testString: if(typeof functionWithArgs === "function") { capture(); functionWithArgs(1,2); uncapture(); } assert(logOutput == 3);
- text: <code>functionWithArgs(7,9)</code> should output <code>16</code>
testString: if(typeof functionWithArgs === "function") { capture(); functionWithArgs(7,9); uncapture(); } assert(logOutput == 16);
- text: Call <code>functionWithArgs</code> with two numbers after you define it.
testString: assert(/^\s*functionWithArgs\s*\(\s*\d+\s*,\s*\d+\s*\)\s*/m.test(code));
Challenge Seed
// Example
function ourFunctionWithArgs(a, b) {
console.log(a - b);
}
ourFunctionWithArgs(10, 5); // Outputs 5
// Only change code below this line.
Before Tests
var logOutput = "";
var originalConsole = console
function capture() {
var nativeLog = console.log;
console.log = function (message) {
if(message) logOutput = JSON.stringify(message).trim();
if(nativeLog.apply) {
nativeLog.apply(originalConsole, arguments);
} else {
var nativeMsg = Array.prototype.slice.apply(arguments).join(' ');
nativeLog(nativeMsg);
}
};
}
function uncapture() {
console.log = originalConsole.log;
}
capture();
After Tests
uncapture();
if (typeof functionWithArgs !== "function") {
(function() { return "functionWithArgs is not defined"; })();
} else {
(function() { return logOutput || "console.log never called"; })();
}
Solution
function functionWithArgs(a, b) {
console.log(a + b);
}
functionWithArgs(10, 5);