深入理解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 相关文章推荐
不用AJAX和IFRAME,说说真正意义上的ASP+JS无刷新技术
Sep 25 Javascript
Firefox+FireBug使JQuery的学习更加轻松愉快
Jan 01 Javascript
本地对象Array的原型扩展实现代码
Dec 04 Javascript
javascript 进阶篇2 CSS XML学习
Mar 14 Javascript
js delete 用法(删除对象属性及变量)
Aug 24 Javascript
老生常谈javascript的类型转换
Oct 12 Javascript
JavaScript中boolean类型之三种情景实例代码
Nov 21 Javascript
bootstrap学习使用(导航条、下拉菜单、轮播、栅格布局等)
Dec 01 Javascript
JS+php后台实现文件上传功能详解
Mar 02 Javascript
vue自定义指令directive的使用方法
Apr 07 Javascript
Node.js API详解之 tty功能与用法实例分析
Apr 27 Javascript
WebWorker 封装 JavaScript 沙箱详情
Nov 02 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
老照片 - 几十年前的收音机与人
2021/03/02 无线电
php 防止单引号,双引号在接受页面转义
2008/07/10 PHP
php通过数组实现多条件查询实现方法(字符串分割)
2014/05/06 PHP
用js实现手把手教你月入万刀(转贴)
2007/11/07 Javascript
40款非常棒的jQuery 插件和制作教程(系列一)
2011/10/26 Javascript
jQuery 获取浏览器所在的IP地址的小例子
2013/11/08 Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
2015/01/26 Javascript
jQuery入门基础知识学习指南
2015/08/14 Javascript
jQuery实现的选择商品飞入文本框动画效果完整实例
2016/08/10 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
2016/11/16 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
2016/12/05 Javascript
ionic中列表项增加和删除的实现方法
2017/01/22 Javascript
详解Vue.js入门环境搭建
2017/03/17 Javascript
基于JavaScript实现活动倒计时效果
2017/04/20 Javascript
jQuery手风琴的简单制作
2017/05/12 jQuery
JS实现上传图片实时预览功能
2017/05/22 Javascript
用node和express连接mysql实现登录注册的实现代码
2017/07/05 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
2017/07/19 Javascript
微信小程序 上传头像的实例详解
2017/10/27 Javascript
javaScript字符串工具类StringUtils详解
2017/12/08 Javascript
使用VueCli3+TypeScript+Vuex一步步构建todoList的方法
2019/07/25 Javascript
vue学习之Vue-Router用法实例分析
2020/01/06 Javascript
python中Flask框架简单入门实例
2015/03/21 Python
使用Python的Treq on Twisted来进行HTTP压力测试
2015/04/16 Python
python数据类型_字符串常用操作(详解)
2017/05/30 Python
理论讲解python多进程并发编程
2018/02/09 Python
python实现树形打印目录结构
2018/03/29 Python
PyQt5实现从主窗口打开子窗口的方法
2019/06/19 Python
详解python中的模块及包导入
2019/08/30 Python
postman传递当前时间戳实例详解
2019/09/14 Python
kafka-python 获取topic lag值方式
2019/12/23 Python
应届护士推荐信
2013/11/16 职场文书
营销总经理岗位职责
2014/02/02 职场文书
大学本科生职业生涯规划书范文
2014/09/14 职场文书
群众路线教育实践活动调研报告
2014/11/03 职场文书
python函数指定默认值的实例讲解
2021/03/29 Python