解析由编译和执行组成。 编译期把JS代码转换成字节码,执行期再转机械码并按顺序执行。 变量初始化在执行期,解析器按照代码顺序一行一行解析执行,边解析边执行。 alert(a); //undefind 注:边解析边执行,a此时未初始化赋值。 function smile() { var a = 7; ...
分类:
Web程序 时间:
2018-11-20 01:31:00
阅读次数:
196
C语言内存管理 内存组成 我们现在把这个模型进行简化,简化如下: 代码段、数据段、BSS段在程序编译期间由编译器分配空间,在程序启动时加载,由于未初始化的全局变量存放在BSS段,已初始化的全局变量存放在数据段,所以程序中可以减少的使用全局变量以节省程序编译和启动时间;栈和堆在程序运行中由系统分配空间 ...
分类:
其他好文 时间:
2018-11-07 22:12:53
阅读次数:
233
一、栈的含义 用于描述方法执行的动态内存模型,简单来说就是代码中的方法模块。主要用于局部变量表。栈的大小在编译器中就已经分配了空间,在进入一个方法时,这个方法需要栈帧分配多少内存是固定的,运行期间是不会改变大小。 局部变量表示指:存放编译期可知的各种基本类型和引用类型。 二、栈帧 说到了栈,就不得不 ...
分类:
其他好文 时间:
2018-11-06 22:35:40
阅读次数:
191
常量(Constants)和iota 常量包含不会发生更改的数据。常量的数据类型只能是boolean、number(int/float/complex)或string。 定义方式: TYPE基本可以省略,因为常量都是简单数据类型,编译器可以根据值推断出它的数据类型。 例如: 常量在编译期间被评估,因 ...
分类:
其他好文 时间:
2018-10-27 21:10:14
阅读次数:
156
写在前面:此随笔仅仅是作为个人学习总结,有不对的地方,请各位前辈指正O(∩_∩)O........ 一: 什么是泛型 泛型是c#2.0之后新特性,是一种语法糖.将大量的安全检查从执行期转移至了编译期,使类型参数化.大至思想就是编译时期确定其类型,延迟思想. 二: 使用泛型 1: 泛型的出现,提高了性 ...
宏 与 inline的区别 存在的价值,两者都是文本替换,降低程序跳转次数,提高效率 1. define 是预处理命令,无法调试 ,最简单文本替换, inline 是编译期替换,可以调试, 存在参数类型检查 2. 使用inline的时候,函数必须定义 直接定义的函数,自动转化为inline defi ...
分类:
其他好文 时间:
2018-10-20 16:29:04
阅读次数:
180
这是5个特殊的代码块。要理解这几个块,关键在于几个时间点: (1).程序编译期间 (2).程序执行期间 (3).程序执行结束但还未退出期间 BEGIN块 BEGIN块是在程序编译期间执行的,也就是上面的步骤(1)所在期间 即使程序中出现了语法错误,BEGIN块也会执行 如果出现了多个BEGIN块,则 ...
分类:
其他好文 时间:
2018-10-12 23:49:46
阅读次数:
208
java泛型梳理 概述 泛型,即参数化类型,是在JDK1.5之后才开始引入的。 所谓参数化类型是指所操作的数据类型在定义时被定义为一个参数,然后在使用时传入具体的类型。 这种参数类型可以用在类,接口,方法的创建中,分别被称为泛型类、泛型接口和泛型方法。 泛型值存在于java的编译期 ,编译后生成字节 ...
分类:
编程语言 时间:
2018-10-09 14:59:57
阅读次数:
146
编译性语言:在将源代码编译完毕生成一个可执行文件后才能运行 解释性语言:在代码的运行期间进行编译 动态类型语言:在运行期间才去做数据检查的语言,也就是说在使用动态类型语言时不用指定数据类 型 静态类型语言:在编译期间去做数据检查 强类型定义语言:强制数据类型定义的语言 弱类型定义语言:数据类型可以忽 ...
分类:
编程语言 时间:
2018-09-30 20:04:10
阅读次数:
177
什么是动态类型语言[1]?动态类型语言的关键特征是它的类型检查的主体过程是在运行期而不是编译期,满足这个特征的语言有很多,常用的包括:JavaScript、Jython、PHP、Python、 Ruby等。相对的,在编译期就进行类型检查过程的语言(如C++和Java等)就是最常用的静态类型语言。 静... ...
分类:
编程语言 时间:
2018-09-23 00:47:41
阅读次数:
204