深入理解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 相关文章推荐
JavaScript 构造函数 面相对象学习必备知识
Jun 09 Javascript
google jQuery 引用文件,jQuery 引用地址集合(jquery 1.2.6至jquery1.5.2)
Apr 24 Javascript
javascript设计模式之解释器模式详解
Jun 05 Javascript
js游戏人物上下左右跑步效果代码分享
Aug 28 Javascript
Bootstrap每天必学之导航组件
Apr 25 Javascript
简单谈谈JS数组中的indexOf方法
Oct 13 Javascript
js仿京东轮播效果 选项卡套选项卡使用
Jan 12 Javascript
jQuery图片查看插件Magnify开发详解
Dec 25 jQuery
JS实现访问DOM对象指定节点的方法示例
Apr 04 Javascript
vue(2.x,3.0)配置跨域代理
Nov 27 Javascript
js实现3D旋转效果
Aug 18 Javascript
在HTML中使用JavaScript的两种方法
Dec 24 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
session 的生命周期是多长
2006/10/09 PHP
PHP性能优化工具篇Benchmark类调试执行时间
2011/12/06 PHP
PHP依赖倒置(Dependency Injection)代码实例
2014/10/11 PHP
PHP文件操作之获取目录下文件与计算相对路径的方法
2016/01/08 PHP
解决表单中第一个非隐藏的元素获得焦点的一个方案
2009/10/26 Javascript
js操作时间(年-月-日 时-分-秒 星期几)
2010/06/20 Javascript
js控制web打印(局部打印)方法整理
2013/05/29 Javascript
createTextRange()的使用示例含文本框选中部分文字内容
2014/02/24 Javascript
父节点获取子节点的字符串示例代码
2014/02/26 Javascript
window.location的重写及判断location是否被重写
2014/09/04 Javascript
jquery代码实现简单的随机图片瀑布流效果
2015/04/20 Javascript
Bootstrap 网站实例之单页营销网站
2016/10/20 Javascript
vue轮播图插件vue-awesome-swiper的使用代码实例
2017/07/10 Javascript
js 提取某()特殊字符串长度的实例
2017/12/06 Javascript
Vue 开发音乐播放器之歌手页右侧快速入口功能
2018/08/08 Javascript
JavaScript常用工具方法封装
2019/02/12 Javascript
微信小程序自定义tabBar在uni-app的适配详解
2019/09/30 Javascript
python进阶教程之函数参数的多种传递方法
2014/08/30 Python
Python 运行 shell 获取输出结果的实例
2019/01/07 Python
Python中format()格式输出全解
2019/04/12 Python
Django组件cookie与session的具体使用
2019/06/05 Python
树莓派3 搭建 django 服务器的实例
2019/08/29 Python
Pycharm中配置远程Docker运行环境的教程图解
2020/06/11 Python
Ubuntu16安装Python3.9的实现步骤
2020/12/15 Python
如何用border-image实现文字气泡边框的示例代码
2020/01/21 HTML / CSS
多视角3D可旋转的HTML5 Logo动画
2016/03/02 HTML / CSS
HTML5拍照和摄像机功能实战详解
2019/01/24 HTML / CSS
H5离线存储Manifest原理及使用
2020/04/28 HTML / CSS
年检委托书
2014/08/30 职场文书
个人违纪检讨书
2014/09/15 职场文书
2016年大学自主招生自荐信范文
2015/03/24 职场文书
幼儿园开学通知
2015/04/24 职场文书
计划生育责任书
2015/05/09 职场文书
记者节感言
2015/08/03 职场文书
2019预备党员转正申请书模板2篇!
2019/08/07 职场文书
Python anaconda安装库命令详解
2021/10/16 Python