深入理解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 倒计时效果实现秒杀思路
Sep 11 Javascript
Javascript 拖拽雏形(逐行分析代码,让你轻松了拖拽的原理)
Jan 23 Javascript
jQuery $.each遍历对象、数组用法实例
Apr 16 Javascript
js HTML5手机刮刮乐代码
Sep 29 Javascript
使用Angular.js实现简单的购物车功能
Nov 21 Javascript
javascript兼容性(实例讲解)
Aug 15 Javascript
JS数组中对象去重操作示例
Jun 04 Javascript
JS正则表达式常见函数与用法小结
Apr 13 Javascript
Nuxt配置Element-UI按需引入的操作方法
Jul 06 Javascript
JS遍历树层级关系实现原理解析
Aug 31 Javascript
vue中使用router全局守卫实现页面拦截的示例
Oct 23 Javascript
Vue+Flask实现图片传输功能
Apr 01 Vue.js
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 Memcached + APC + 文件缓存封装实现代码
2010/03/11 PHP
PHP判断网络文件是否存在的方法
2015/03/12 PHP
php提交表单发送邮件的方法
2015/03/20 PHP
WordPres对前端页面调试时的两个PHP函数使用小技巧
2015/12/22 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
jQuery 开发者应该注意的9个错误
2012/05/03 Javascript
ajax的hide隐藏问题解决方法
2012/12/11 Javascript
jQuery.Validate验证库的使用介绍
2013/04/26 Javascript
JQuery判断子iframe何时加载完成解决方案
2013/08/20 Javascript
JS将秒换成时分秒实现代码
2013/09/03 Javascript
JavaScript必知必会(五) eval 的使用
2016/06/08 Javascript
JS正则验证多个邮箱完整实例【邮箱用分号隔开】
2017/04/19 Javascript
收藏AngularJS中最重要的核心功能
2017/07/09 Javascript
[17:00]DOTA2 HEROS教学视频教你分分钟做大人-帕克
2014/06/10 DOTA
python中pycurl库的用法实例
2014/09/30 Python
python PIL模块与随机生成中文验证码
2016/02/27 Python
Python 制作糗事百科爬虫实例
2016/09/22 Python
利用python批量给云主机配置安全组的方法教程
2017/06/21 Python
Python 网络爬虫--关于简单的模拟登录实例讲解
2018/06/01 Python
django admin后台添加导出excel功能示例代码
2019/05/15 Python
Django中使用haystack+whoosh实现搜索功能
2019/10/08 Python
Python数据可视化:箱线图多种库画法
2019/11/06 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
2019/12/12 Python
详解python常用命令行选项与环境变量
2020/02/20 Python
pandas map(),apply(),applymap()区别解析
2021/02/24 Python
市场营销专业个人自荐信格式
2013/09/21 职场文书
银行见习期自我鉴定
2014/01/29 职场文书
专业求职信撰写要诀
2014/02/18 职场文书
质量管理标语
2014/06/12 职场文书
高速铁道技术专业求职信
2014/08/09 职场文书
2015年党员个人自我评价
2015/03/03 职场文书
人工作失职检讨书
2015/05/05 职场文书
教师节祝酒词
2015/08/11 职场文书
2016年推广普通话宣传周活动总结
2016/04/06 职场文书
Nginx反向代理及负载均衡如何实现(基于linux)
2021/03/31 Servers
只需要这一行代码就能让python计算速度提高十倍
2021/05/24 Python