深入理解JavaScript 函数


Posted in Javascript onJune 06, 2016

方法&函数

区别

1.function 是更通用的概念,如数学、编程

2.method 是面向对象中的概念,一般与类或对象成对出现

关系

1.对象的属性可以是任意类型

2.对象的属性如果是函数类型,它就叫做这个对象的方法

3.所以方法的本质还是函数

函数的调用

1.fun()
2.obj.fun()
3.fun.call()

函数的属性和方法

1.name
2.length
3.toString

作用域

变量不是哪里都可以使用

全局变量(跨文件)

var n = 1;
function fn(){
  console.log(n); // 1
}

局部变量(只能在函数内部访问)

function fn1(){
  var n = 2;
}
console.log(n); // Uncaught ReferenceError: number is not defined

函数作用域

•函数能独立出一个作用域

var n = 1;
function f(){
  var n = 2;
  console.log(n); // 在当前作用域进行变量寻找
}
f();
console.log(n); // 在全局作用域进行变量寻找

•函数里面可以访问函数外面

var n = 1;
var x = function(){
  console.log(n);
};

function f(){
  var n = 2;
  x();
}
f();

•自调用匿名函数

!function (){
  var n = 1;
  console.log(n);
};

~function (){
  var n = 1;
  console.log(n);
};

(function(){
  var n = 1;
  console.log(n);
}());

•闭包

<!DOCTYPE html>
<html>
  <head>
   <meta charset="utf-8">
   <title>JS Bin</title>
  </head>
  <body>
   <ul>
    <li>aaa</li>
    <li>bbb</li>
    <li>ccc</li>
    <li>ddd</li>
    <li>eee</li>
   </ul>
   <script>
    var items = document.getElementsByTagName('li'),
      i = 0;
    for (i; i < items.length; i++) {
     items[i].onclick = function(e){
      alert(i);
     };
    }
   </script>
  </body>
</html>

以上这篇深入理解JavaScript 函数就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery实现metro效果示例代码
Sep 06 Javascript
解决ueditor jquery javascript 取值问题
Dec 30 Javascript
在JavaScript的AngularJS库中进行单元测试的方法
Jun 23 Javascript
jQuery原生的动画效果
Jul 10 Javascript
如何用javascript计算文本框还能输入多少个字符
Jul 29 Javascript
跨域资源共享 CORS 详解
Apr 26 Javascript
Vue自定义指令拖拽功能示例
Feb 17 Javascript
vue修改vue项目运行端口号的方法
Aug 04 Javascript
vue-cli创建的项目,配置多页面的实现方法
Mar 15 Javascript
使用JSON格式提交数据到服务端的实例代码
Apr 01 Javascript
Layui数据表格跳转到指定页的实现方法
Sep 05 Javascript
vue获取form表单的值示例
Oct 29 Javascript
Node.js的Web模板引擎ejs的入门使用教程
Jun 06 #Javascript
javascript url几种编码方式详解
Jun 06 #Javascript
ionic js 复选框 与普通的 HTML 复选框到底有没区别
Jun 06 #Javascript
ionic js 模型 $ionicModal 可以遮住用户主界面的内容框
Jun 06 #Javascript
JavaScript sort数组排序方法和自我实现排序方法小结
Jun 06 #Javascript
深入理解逻辑表达式的用法 与或非的用法
Jun 06 #Javascript
基于JS实现数字+字母+中文的混合排序方法
Jun 06 #Javascript
You might like
PHP设计模式之调解者模式的深入解析
2013/06/13 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
2015/07/06 PHP
thinkphp命名空间用法实例详解
2015/12/30 PHP
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
url 特殊字符 传递参数解决方法
2010/01/01 Javascript
自写简单JS判断是否已经弹出页面
2010/10/20 Javascript
jquery 判断滚动条到达了底部和顶端的方法
2014/04/02 Javascript
input标签内容改变的触发事件介绍
2014/06/18 Javascript
jsMind通过鼠标拖拽的方式调整节点位置
2015/04/13 Javascript
Bootstrap表格和栅格分页实例详解
2016/05/20 Javascript
JS实现复制内容到剪贴板功能
2017/02/05 Javascript
详解nodejs操作mongodb数据库封装DB类
2017/04/10 NodeJs
WebSocket的通信过程与实现方法详解
2018/04/29 Javascript
Vue 指令实现按钮级别权限管理功能
2019/04/23 Javascript
详解iframe跨域的几种常用方法(小结)
2019/04/29 Javascript
vue移动端城市三级联动组件使用详解
2019/07/26 Javascript
vue-router为激活的路由设置样式操作
2020/07/18 Javascript
[04:11]DOTA2亚洲邀请赛小组赛第一日 TOP10精彩集锦
2015/01/30 DOTA
[11:12]2018DOTA2国际邀请赛寻真——绿色长城OpTic
2018/08/10 DOTA
Python实现的生成格雷码功能示例
2018/01/24 Python
解决python tkinter界面卡死的问题
2019/07/17 Python
Python 使用type来定义类的实现
2019/11/19 Python
Python通过Tesseract库实现文字识别
2020/03/05 Python
如何提高python 中for循环的效率
2020/04/15 Python
scrapy处理python爬虫调度详解
2020/11/23 Python
html5 冒号分隔符对齐的实现
2019/07/31 HTML / CSS
HTML table 表格边框的实现思路
2019/10/12 HTML / CSS
工地门卫岗位职责
2013/12/30 职场文书
办公室主任先进事迹
2014/01/18 职场文书
函授本科个人自我鉴定
2014/03/25 职场文书
中专毕业生的自荐书
2014/07/01 职场文书
高中学校对照检查材料
2014/08/31 职场文书
个人公司授权委托书范本
2014/10/12 职场文书
老公出轨后的保证书
2015/05/08 职场文书
民事二审代理词
2015/05/25 职场文书
零基础学java之带返回值的方法的定义和调用
2022/04/10 Java/Android