专栏首页程序员互动联盟【答疑解惑第二十六讲】js作用域

【答疑解惑第二十六讲】js作用域

疑惑一

$("#test").children().remove()和$($("#test").children()).remove()的具体区别?

前者的重点体现了,jquery的对象的阶级性,但是由于jquery还有一个特定就是相同的属性会重复执行;

比如css().remove(),这个这对的都是最开始选择的元素;而后者就是用一个多余的$符号括起来,这样写如果对于代码的解读性有一定的好处;

不过如果对于非常了解jquery的人,后者就是有点画蛇添足了;输入关键字html5获取html相关的资料,不懂的继续后台问

疑惑二

<div>与<span>的具体区别是什么?

他们具体的却别在于应用的场景,div属于块元素,默认的情况下会自己就站一行;

<span>元素数据行内行内元素,自己不会换行,而是在一行之中,

不过他们共同的特点,就是没有具体的语意;

疑惑三

什么是JS作用域与闭包?

作用域:它是指对某一变量和方法具有访问权限的代码空间, 在JS中, 作用域是在函数中维护的。表示变量或函数起作用的区域,指代了它们在什么样的上下文中执行,亦即上下文执行环境。Javascript的作用域只有两种:全局作用域和本地作用域,本地作用域是按照函数来区分的。 闭包:在js中的我的理解就是函数嵌套函数,当内部函数在定义它的作用域的外部被引用时,就创建了该内部函数的闭包 ,如果内部函数引用了位于外部函数的变量,当外部函数调用完毕后,这些变量在内存不会被 释放,因为闭包需要它们. 使用闭包要注意: 1)由于闭包会使得函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露。解决方法是,在退出函数之前,将不使用的局部变量全部删除。 2)闭包会在父函数外部,改变父函数内部变量的值。所以,如果你把父函数当作对象(object)使用,把闭包当作它的公用方法(Public Method),把内部变量当作它的私有属性(private value),这时一定要小心,不要随便 改变父函数内部变量的值。

本文分享自微信公众号 - 程序员互动联盟(coder_online)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-12-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【基础编程】聊聊C语言-变量的寿命

    上一篇在编程世界的容器中,我们讲述了程序中的数据都存储在变量中,而变量根据数据类型的不同所占用的内存大小也不一样。但是计算机的内存大小是有限的不可能无限的分配下...

    程序员互动联盟
  • 如果华为现在请倪光南来华为搞芯片。华为会超过芯片巨头英特尔吗?

    这种问题可以拿来当作茶余饭后的谈点,但在实际研发过程中,芯片和操作系统这种核心级别的研发考验的不是单个人的能力,是对一个产业的验证,前些日子任正非老爷子在接受央...

    程序员互动联盟
  • 光刻机欧洲可以制造,为什么感觉欧洲芯片做不起来呢?

    首先来讲光刻机技术不仅仅是欧洲独有的,光刻机需要几万个零件需要全球供应零部件,核心部件当然是欧洲和美国共同完成的,只不过荷兰ASML最终完成了整合,并且几乎达到...

    程序员互动联盟
  • javascript之闭包基础了解

    闭包就是值有权访问另一个函数作用域中的变量的函数,常见的方式就是:在一个函数内部创建另一个函数,并把这个函数作为返回值。

    小明爱学习
  • javascript之闭包基础和注意点

    闭包就是值有权访问另一个函数作用域中的变量的函数,常见的方式就是:在一个函数内部创建另一个函数,并把这个函数作为返回值。

    小明爱学习
  • 「JS-Learning」理解JS的闭包

    其实不必要太纠结于概念,因为如何定义闭包不会影响到实际的使用,了解闭包是如何产生的,这才是本质的东西。下面就根据我的理解,用通俗的语言梳理下闭包的前因后果。

    文渊同学
  • JavaScript 知识点整理

    JavaScript是按照ECMAScript标准设计和实现的,后文说的JavaScript语法其实是ES5的标准的实现。 先说说有哪些基础语法? 最基础语法有...

    用户1667431
  • 还担心面试官问闭包?

    为什么我们需要理解并且掌握闭包,且不说大道理,就问你要不要成为JavaScript高手?不要?那你要不要面试找工作嘛。。。

    Nealyang
  • JavaScript|箭头函数的用法

    JavaScript ES6标准新增了比较重要的一种新的函数:Arrow Function(箭头函数),但大多数人都不能很好的了解箭头函数的用法,也不能区别箭头...

    算法与编程之美
  • 还担心面试官问闭包?

    为什么我们需要理解并且掌握闭包,且不说大道理,就问你要不要成为JavaScript高手?不要?那你要不要面试找工作嘛。。。

    JSCON简时空

扫码关注云+社区

领取腾讯云代金券