javascript学习记录1

JavaScript闭包与作用域解析

看了javascipt权威指南和mozilla的javascript教程,真是头大。我最熟悉的语言算是C和C++的,开发项目的时候也玩过java,不过java没怎么深入学习,这没啥大不了的,个人觉得C,C++和java再语法上基本上相通的,所以在这些语言之间做切换是没什么难度的。

把C++编程思想看过一两遍之后,理解python无压力,很快就上手,关键是在于如何熟练运用那些标准库。python另外需要注意的两点是编码规范和效率问题。可能对于同一个问题python有多种方式解决,但是如何高效得解决,还是很有学问的,这就得靠平常积累了。

这里mark一下这些天学习javascript的心得。

第一点就是javasript的变量作用域是词法作用域,还算好理解。大概意思就是函数的执行依赖于变量的作用域,这个作用域是再函数定义的时候决定的,而不是函数调用的时候决定的。我的通俗理解就是函数作为对象,是方法和对象包含的变量的集合,函数执行的时候,依赖于它所包含的变量。这些概念主要用于嵌套的函数中。


function init() {
  var name = "Mozilla";
  function displayName() {
    alert(name);
  }
  return displayName;
} var myFunc = makeFunc(); myFunc();

在上面的代码中,init是一个函数对象,name是这个函数对象包含的属性;对于嵌套的函数(对象)displayName而言,name是它依赖的“环境变量“。

第二点,闭包,我推荐乐队mozilla的开发指导,这个比javascript权威指南上的要通俗易懂一些。

https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Closures?redirectlocale=en-US&redirectslug=Core_JavaScript_1.5_Guide%2FClosures

最后吐槽一下,javascript实在太灵活了,一时半会适应不过来,不过要真是和c++一样,那倒也无趣了!

转载于:https://my.oschina.net/emrys/blog/87230

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值