深入理解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 相关文章推荐
UI Events 用户界面事件
Jun 27 Javascript
浅析document.ready和window.onload的区别讲解
Dec 18 Javascript
jQuery实现简单的日期输入格式化控件
Mar 12 Javascript
学习JavaScript设计模式(多态)
Nov 25 Javascript
jQuery ajax提交Form表单实例(附demo源码)
Apr 06 Javascript
jQuery实现边框动态效果的实例代码
Sep 23 Javascript
jQuery通过ajax方法获取json数据不执行success的原因及解决方法
Oct 15 Javascript
JavaScript数组操作详解
Feb 04 Javascript
原生js FileReader对象实现图片上传本地预览效果
Mar 27 Javascript
jQuery的时间datetime控件在AngularJs中的使用实例(分享)
Aug 17 jQuery
axios简单实现小程序延时loading指示
Jul 30 Javascript
openlayers实现地图弹窗
Sep 25 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
Centos下升级php5.2到php5.4全记录(编译安装)
2015/04/03 PHP
php根据生日计算年龄的方法
2015/07/13 PHP
完美解决Thinkphp3.2中插入相同数据的问题
2017/08/01 PHP
laravel 框架执行流程与原理简单分析
2020/02/01 PHP
JavaScript 设计模式学习 Factory
2009/07/29 Javascript
JavaScript传递变量: 值传递?引用传递?
2011/02/22 Javascript
用jquery模仿的a的title属性(兼容ie6/7)
2013/01/21 Javascript
深入理解javaScript中的事件驱动
2013/05/21 Javascript
浅谈 javascript 事件处理
2015/01/04 Javascript
jQuery实现表格行上移下移和置顶的方法
2015/05/22 Javascript
如何实现移动端浏览器不显示 pc 端的广告
2015/10/15 Javascript
js实现简单的验证码
2015/12/25 Javascript
javascript数字验证的实例代码(推荐)
2016/08/20 Javascript
javascript表单控件实例讲解
2016/09/13 Javascript
jQuery Ztree行政地区树状展示(点击加载)
2016/11/09 Javascript
js实现微博发布小功能
2017/01/12 Javascript
详解vue-cli快速构建vue应用并实现webpack打包
2017/12/13 Javascript
基于 Immutable.js 实现撤销重做功能的实例代码
2018/03/01 Javascript
原生JS实现的碰撞检测功能示例
2018/05/18 Javascript
vue-cli3脚手架的配置及使用教程
2018/08/28 Javascript
js屏蔽退格键(backspace或者叫后退键与F5)
2019/02/10 Javascript
Vue路由管理器Vue-router的使用方法详解
2020/02/05 Javascript
js实现点赞效果
2020/03/16 Javascript
[07:47]DOTA2国际邀请赛采访专栏:探访Valve总部
2013/08/08 DOTA
Django项目开发中cookies和session的常用操作分析
2018/07/03 Python
Python数据可视化:幂律分布实例详解
2019/12/07 Python
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
Python爬虫爬取ts碎片视频+验证码登录功能
2021/02/22 Python
HTML5如何为形状图上颜色怎么绘制具有颜色和透明度的矩形
2014/06/23 HTML / CSS
利用HTML5 Canvas API绘制矩形的超级攻略
2016/03/21 HTML / CSS
假日旅行社实习自我鉴定
2013/09/24 职场文书
医学院护理专业应届生求职信
2013/11/12 职场文书
结婚保证书(三从四德)
2015/02/26 职场文书
《火烧云》教学反思
2016/02/23 职场文书
2016年中学法制宣传日活动总结
2016/04/01 职场文书
MySQL非空约束(not null)案例讲解
2021/08/23 MySQL