热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

js函数进修

函数声明(静态函数)函数声明有个特性就是函数能够函数声明提早hello();functionhello(){console.log(hellojs);}函数表达式(Function

函数声明(静态函数)

函数声明有个特性就是函数能够函数声明提早

hello();
function hello(){
console.log('hello js');
}

函数表达式(Function expressions)

var hello2 = function(){
console.log('hello2 js');
}
hello2();

这类体式格局定名,没有函数声明提早,这个体式格局也是自身比较喜好用的体式格局。

匿名函数( anonymous)

(function(){
console.log('message');
})()

也能够直接传入变量,jQuery源码用的比较的多,用匿名函数的优点就是能够削减定名的争执,省的为了只实行一次的函数你还要去定名

(function(e){
console.log(e);
})(2)
自动实行的其他的写法
var auto = (function(){
console.log('auto message');
})()
var auto = (function(){
console.log('auto message2');
}())

回调函数(callback)

就是把函数当作变量,这个算是js中比较迥殊的处所,nodejs的异步回调的大致就是那样

function person(callback,name,age){
callback(name,age);
}
function output(name,age){
console.log(name+':'+age);
}
new person(output,'zs',18);

递归函数

关于递归,这个日常平凡不敢去太多的运用,当时进修java的时刻就很转,也就不尴尬自身了。简朴的说就是自身挪用自身:

function add(n){
if(n<=1){
return 1;
}else{
return n+add(n-1)
}
}
// var i= add(4);
console.log(add(4));

组织函数

  • 组织函数首字母大写
  • this用法,指向自身,这个比较复杂,今后总结好了,弄邃晓了再细说
  • 闭包题目也是比较头痛的题目,留在今后。会形成内存斲丧

组织函数的三部曲:

  • 组织要领
  • 定义属性
  • 原型法定义函数,如许比较的节约内存
  • 函数的继续,call,apply(用在通报数组)

函数的继续:

function Person(name,age){
this.name=name;
this.age=age;
}
Person.prototype.out=function(){
var self=this;
console.log(this.name+':'+this.age);
}
function Student(name,age,id){
// Person.call(this,name,age);
Person.apply(this,[name,age]);//或是用apply都行
this.id=id;
}
Student.prototype.output=function(){
var self=this;
console.log(this.name+':'+this.age+';'+this.id);
}
new Person('lh',18).out();
new Student('KK',18,'XUESHENG').output();

函数的多态:

函数的重载:

主如果经由过程argument.length离别挪用的,没有怎样用过
function f(x){}
function f(x,y){}
function f(x,y,z){}

总结最优的定名函数要领:

用组织要领天生成员变量,用原型法天生成员要领,削减内存的斲丧

function Person(name,age){
this.name=name;
this.age=age;
this.say();
// 如许也行(组织要领分派成员要领),比较喜好原型法组织函数
this.say=function(){
console.log(name+age);
}
}
Person.prototype.say=function(){
console.log(name+age);
}

推荐阅读
  • 在Java中,匿名函数作为一种无名的函数结构,无法独立调用;而在JavaScript中,不仅有类似的匿名函数,还有立即执行函数(IIFE)和闭包等高级特性。立即执行函数同样基于匿名函数实现,但会在定义时立即执行,而闭包则通过嵌套函数来捕获外部变量,实现数据封装和持久化。这些不同的函数形式在实际开发中各有应用场景,理解其特点有助于更好地利用语言特性进行编程。 ... [详细]
  • 深入解析:JavaScript中的表达式与语句有何不同
    深入解析:JavaScript中的表达式与语句有何不同 ... [详细]
  • 本文探讨了使用JavaScript实现多种经典排序算法的高效方法,包括冒泡排序、选择排序、插入排序、归并排序和快速排序。为了确保代码的结构清晰和可维护性,我们首先定义了一个 `ArrayList` 类,该类中包含了待排序的数组声明。通过这种方式,我们不仅能够更好地组织代码,还能提高算法的执行效率和可读性。此外,我们还对每种排序算法进行了详细的性能分析和优化建议,以帮助开发者在实际应用中选择最合适的排序方法。 ... [详细]
  • 本文详细介绍了如何在微信小程序中使用JavaScript实现图片上传至PHP服务器的方法。通过具体的代码示例,帮助开发者掌握从客户端选择图片、处理图片数据到服务器端接收并保存图片的完整流程。同时,文章还提供了常见问题的解决方案和优化建议,确保上传过程的高效性和稳定性。 ... [详细]
  • 本文详细解析了如何使用 jQuery 实现一个在浏览器地址栏运行的射击游戏。通过源代码分析,展示了关键的 JavaScript 技术和实现方法,并提供了在线演示链接供读者参考。此外,还介绍了如何在 Visual Studio Code 中进行开发和调试,为开发者提供了实用的技巧和建议。 ... [详细]
  • 本项目在Java Maven框架下,利用POI库实现了Excel数据的高效导入与导出功能。通过优化数据处理流程,提升了数据操作的性能和稳定性。项目已发布至GitHub,当前最新版本为0.0.5。该项目不仅适用于小型应用,也可扩展用于大型企业级系统,提供了灵活的数据管理解决方案。GitHub地址:https://github.com/83945105/holygrail,Maven坐标:`com.github.83945105:holygrail:0.0.5`。 ... [详细]
  • 本题库精选了Java核心知识点的练习题,旨在帮助学习者巩固和检验对Java理论基础的掌握。其中,选择题部分涵盖了访问控制权限等关键概念,例如,Java语言中仅允许子类或同一包内的类访问的访问权限为protected。此外,题库还包括其他重要知识点,如异常处理、多线程、集合框架等,全面覆盖Java编程的核心内容。 ... [详细]
  • JavaScript最初并非设计为纯粹的面向对象编程(OOP)语言,因为直到ES5标准中仍未引入类的概念。然而,随着ES6的发布,JavaScript正式引入了类的语法,使得开发者能够更加直观地实现继承机制。本文将深入探讨JavaScript中多样的继承实现方法,包括原型链、寄生组合式继承等技术,并分析它们的优缺点及适用场景。 ... [详细]
  • MVVM架构~mvc,mvp,mvvm大话开篇
    返回目录百度百科的定义:MVP是从经典的模式MVC演变而来,它们的基本思想有相通的地方:ControllerPresenter负责逻辑的处理,Model提供数据,View负责显示。作为一种新的模 ... [详细]
  • 本文探讨了如何高效利用 JavaScript 中的 `filter` 方法进行数据筛选。`filter` 方法能够创建一个包含通过测试的新数组,而不改变原始数组。其基本语法为:`原数组.filter((元素, 索引, 原数组) => { 筛选条件 })`。例如,可以通过 `filter` 方法从一个对象数组中筛选出符合条件的对象,生成新的数组以供进一步处理。 ... [详细]
  • 在Laravel中实现PHP对JSON数据的发布与处理 ... [详细]
  • JavaScript 流程控制:分支与循环结构实例解析
    JavaScript 流程控制:分支与循环结构实例解析 ... [详细]
  • 如何判断一个度序列能否构成简单图——哈维尔-哈基米算法的应用与解析 ... [详细]
  • 本文深入探讨了 JavaScript 中 `let` 关键词的特性和应用场景。与 `var` 不同,`let` 的作用域限制在代码块内,而 `var` 的作用域则限定在函数内部。此外,`let` 声明不会发生变量提升,并且在同一作用域内不允许重复声明同一变量。通过具体的示例和分析,本文详细解释了这些特性如何影响代码的可读性和维护性。 ... [详细]
  • 最大化两个非空子集之间的和的差异:集合划分策略分析 ... [详细]
author-avatar
英雄泪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有