简单的基本功能
这是一个不带参数的简单函数:
function hello() { console.log('hello there stranger, how are you?');}hello();
登录后复制
这是一个带有一个参数的函数:
function greet(person) { console.log(`hi there ${person}.`);}greet('megan');
登录后复制
我们可以有多个参数,如下所示:
function greetfullname(fname, lname) { console.log(`hi there ${fname} ${lname}.`);}greetfullname('megan', 'paffrath');
登录后复制
函数表达式
函数表达式只是编写函数的另一种方式。他们的工作方式仍然与上面相同:
const square = function(x) { return x * x;};square(2); // 4
登录后复制
高阶函数
这些函数与其他函数一起运行/在其他函数上运行,也许它们:
接受其他函数作为参数返回一个函数
将另一个函数作为参数的函数的示例是:
function calltwice(func) { func(); func();}let laugh = function () { console.log('haha');};calltwice(laugh);// haha// hahafunction rolldie() { const roll = math.floor(math.random() * 6) + 1; console.log(roll);}calltwice(rolldie);// random number// random number
登录后复制
函数返回函数的一个例子是:
function makemysteryfunc() { const rand = math.random(); if (rand > 0.5) { return function () { console.log('you win'); }; } else { return function () { alert('you have been infected by a computer virus'); while (true) { alert('stop trying to close this window.'); } }; }}let returnedfunc = makemysteryfunc();returnedfunc();
登录后复制
另一个(更有用的例子)是:
function makebetweenfunc(min, max) { return function (num) { return num >= min && num <= max; };}const isbetween = makebetweenfunc(100, 200);// isbetween(130); // true// isbetween(34); // false
登录后复制
方法
我们可以添加函数作为对象的属性(这些称为方法)。
例如:
const mymath = { pi: 3.14, square: function (num) { return num * num; }, // note the 2 diff ways of defining methods cube(num) { return num ** 3; },};
登录后复制
这
“this”主要在对象的方法中使用。它用于引用对象的属性。
const person = { first: 'abby', last: 'smith', fullname() { return `${this.first} ${this.last}`; },};person.fullname(); // "abby smith"person.lastname = 'elm';person.fullname(); // "abby elm"
登录后复制
注意,在对象之外,“this”指的是顶级窗口对象。要查看其中包含的内容,请在控制台中输入。通用函数也存储在 this 对象中:
// defined on its own (outside of an object)function howdy() { console.log('HOWDY');}this.howdy(); // HOWDY
登录后复制
以上就是JavaScript:函数、函数表达式、对象、方法和 this的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2672014.html