随笔分类 - javaScript 基础知识大全
变量与值类型、运算符、条件语句、引用值、类型转换、函数及作用域、递归与预编译、对象与包装类、原型与原型链、继承模式、命名空间、对象枚举、关于this、aguments实参列表、数组、类数组、try..catch、e5、e6、dom、dom选择器、dom节点、dom继承树与dom的基本操作、date对象与定时器、dom窗口属性、脚本化css、事件。
摘要:一、数字的语法 JavaScript中的数字字面量一般用十进制表示。在JavaScript中表示数字的数据类型只有一种Number,这种天使与魔鬼同体的数据类型也就只有js了。 然后还有一些奇葩的数字表示法: 一般情况下,奇葩都是成双成对的: 这种奇葩你认识它就好了,最好不要出现在你的代码里,记得这
阅读全文
摘要:JavaScript中调皮的undefined 在JavaScript中undefined只是一个标识符,不是关键字,这个很不靠谱的标识符还不能像其他符号一样随意使用,一方面是需要它的原始值保持不变,另一方面是用法不当还会产生很多意向不到的bug。有这种不靠谱的标识符的语言遗留问题,我们在编程时为了
阅读全文
摘要:首先,JavaScript的this指向问题并非传说中的那么难,不难的是机制并不复杂,而被认为不好理解的是逻辑关系和容易混淆的执行上下文。这篇博客也就会基于这两个不好理解的角度来展开,如要要严格的来对this的指向来分类的话,有三类不同的情况,一种是独立函数执行的指向机制,第二种就是引用指向机制,第
阅读全文
摘要:一些很重要的说明:前面三篇博客详细的介绍了,引擎与编译器和作用域的关系,重点需要理解的是编译器中的分词与词法分析,JavaScript的特有的“赋值操作的左右侧”引用操作;编译阶段的词法作用域的工作原理和eval、with的欺骗词法作用域;然后还有介绍了函数作用域与块级作用及相关的ES6新特性,接着
阅读全文
摘要:一个先有鸡还是先有蛋的问题,先看一段代码: 通常我们都说JavaScript代码是由上到下一行一行执行,但实际这段代码输出的结果是2。但这段代码并不能为我们要讨论的问题提供完整的参考意义,所以再看一下代码: 这段代码的测试结果输出了undefined。 这两段代码打破了我们常说的JavaScript
阅读全文
摘要:这篇博客主要对词法作用域与欺骗词法作用域、函数作用域与块级作用域、函数内部的变量提成原理进行详细的分析,在这篇博客之前,关于作用域、编译原理、浏览器引擎的原理及关系在javaScript的作用域和闭包(一)有详细的阐述,而今天这篇博客是在其基础上对作用域的工作原理进行深入的分析,所有如果有对编译和引
阅读全文
摘要:一、作用域是什么? 几乎所有的编程语言最基本的功能之一,就是能够存储变量的值,并且能访问和修改这些值。 修改变量值的过程我们通常在程序执行时,称为改变一个对象的状态。有了状态,让程序变得有非常有趣。 然而,这些变量存在哪里?程序又是如何找到它们的? 这些问题就说明需要一套设计良好的规则来存储变量,并
阅读全文
摘要:DOM:document object model 文档对象模型 DOM就是整个HTML文档的关系图谱(代表整个HTML文档),可以理解为下图: 一、查看元素节点 1.document.getElementById('元素id') 获取的类型:元素对象; 兼容性:a.IE6、7,会把表单元素inpu
阅读全文
摘要:关于正则表达式,和很多前辈聊起这个知识点时,他们的反馈都比聊其他技术谦逊,而和很多刚入门的程序员讨论时甚至会有觉得你看不起他。 的确,正则表达式从通常的应用来看,的确不难,比如电话,邮箱等验证。语法,逻辑都算不上复杂,我之前也认为正则表达式也算不上什么高大上的技术。 但是,改变我看法的是,有一次有个
阅读全文