深入理解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 相关文章推荐
mailto的使用技巧分享
Dec 21 Javascript
JQuery slideshow的一个小问题(如何发现及解决过程)
Feb 06 Javascript
JavaScript中通过提示框跳转页面的方法
Feb 14 Javascript
值得学习的bootstrap fileinput文件上传工具
Nov 08 Javascript
详解vue.js组件化开发实践
Dec 14 Javascript
基于JavaScript实现焦点图轮播效果
Mar 27 Javascript
Vue动态组件实例解析
Aug 20 Javascript
用vue构建多页面应用的示例代码
Sep 20 Javascript
vue中路由参数传递可能会遇到的坑
Dec 07 Javascript
详解基于node.js的脚手架工具开发经历
Jan 28 Javascript
vue-loader中引入模板预处理器的实现
Sep 04 Javascript
推荐几个不错的console调试技巧实现
Dec 20 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/04 无线电
php抓取https的内容的代码
2010/04/06 PHP
PHP面向对象分析设计的61条军规小结
2010/07/17 PHP
PHP中spl_autoload_register()和__autoload()区别分析
2014/05/10 PHP
php下载文件,添加响应头的简单实例
2016/09/22 PHP
php实例化一个类的具体方法
2019/09/19 PHP
php+layui数据表格实现数据分页渲染代码
2019/10/26 PHP
初学JavaScript_03(ExtJs Grid的简单使用)
2008/10/02 Javascript
JQuery 解析多维的Json数据格式
2009/11/02 Javascript
js控制input输入字符解析
2013/12/27 Javascript
深入剖析JavaScript:Object类型
2016/05/10 Javascript
javascript封装addLoadEvent实现页面同时加载执行多个函数的方法
2016/07/25 Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
2016/07/27 Javascript
AngularJS实现动态编译添加到dom中的方法
2016/11/04 Javascript
javascript简单进制转换实现方法
2016/11/24 Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
2016/12/01 Javascript
Vue数据驱动模拟实现1
2017/01/11 Javascript
bootstrap——bootstrapTable实现隐藏列的示例
2017/01/14 Javascript
jQuery Masonry瀑布流布局神器使用详解
2017/05/25 jQuery
vuex直接赋值的三种方法总结
2018/09/16 Javascript
基于vue中keep-alive缓存问题的解决方法
2018/09/21 Javascript
微信小程序下拉菜单效果的实例代码
2019/05/14 Javascript
vue实现简易图片左右旋转,上一张,下一张组件案例
2020/07/31 Javascript
vue 插槽简介及使用示例
2020/11/19 Vue.js
[46:27]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#2LGD VS MVP.Phx第一局
2016/03/02 DOTA
Python学习笔记之if语句的使用示例
2017/10/23 Python
Flask-WTF表单的使用方法
2019/07/12 Python
Python BeautifulReport可视化报告代码实例
2020/04/13 Python
python 中关于pycharm选择运行环境的问题
2020/10/31 Python
前台文员的岗位职责
2013/11/14 职场文书
研究生简历自我评价范文
2014/09/13 职场文书
县级领导干部开展党的群众路线教育实践活动工作汇报
2014/10/25 职场文书
2015年监理个人工作总结
2015/05/23 职场文书
Python 如何利用ffmpeg 处理视频素材
2021/11/27 Python
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL
nginx之内存池的实现
2022/06/28 Servers