javascript经常用到的各种专业名词,在此整理一下分享给大家:
直接量(Literals)就是程序中直接使用的数据值,常见的有两种:数值和字符串
(1)数值:1,2,3,4,1.1,-1.....数学中的数字
(2)字符串:程序中被单双引号包裹起来的内容都是字符串。eg:"string"
(3)其他字面量:true false null 正则表达式
变量是存储信息的容器。一般我们都会使用变量来表示你的数据,变量的名字我们称之为标识符,他必须满足一些规则:
变量名必须以字母、下划线、$开头,其次的部分可以加上数字(0-9)。还有一点,因为JavaScript是大小写敏感的,所以字母就理所当然的包括了从A到Z和从a到z。
原始值(primitive value)是固定而简单的值,是存放在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置。原始类型的值被称为原始值,是因为它们是不可细化的。原始类型有以下五种类型:Undefined,Null,Boolean,Number,String。对变量或值使用typeof运算符将会返回原始类型的字符串。
关键字——是被js定义过的单词,如:var,function
保留字——目前还没被js定义单词,但是以后肯能会被js定义使用的单词,也就是很有可能在未来版本的js中会成为关键字的单词。所以不能使用保留字做标识符,如果用了,一旦新版本js发布,那么你之前的程序就会报错了。
数据类型分为:原始类型、对象类型、null、underfined
原始类型——包括数字,字符串,布尔值
对象类型——除了数字,字符串,布尔值,null,underfined之外的都是对象。
null,underfined分别代表了各自特殊类型的唯一成员。
变量声明也就是使用var关键字来声明变量,如果在声明的时候未赋值,则它的初始值就是underfined。
用var关键字在函数体外声明的变量是全局变量;在函数体内使用var声明的变量则是局部变量,该变量只对该函数可见。
如果未使用var关键字声明的变量,无论它是否在函数体内声明的,它都是全局变量。
他们的区别是,使用var关键字声明的变量不能被delete删除,而未使用var声明的变量则是可以删除的。
JavaScript中的表达式和语句是有区别的.一个表达式会产生一个值,它可以放在任何需要一个值的地方,比如,作为一个函数调用的参数.下面的每行代码都是一个表达式:
myvar
3 + x
myfunc("a", "b")
语句可以理解成一个行为.循环语句和if语句就是典型的语句.一个程序是由一系列语句组成的.JavaScript中某些需要语句的地方,你可以使用一个表达式来代替.这样的语句称之为表达式语句.但反过来不可以:你不能在一个需要表达式的地方放一个语句.比如,一个if语句不能作为一个函数的参数
另外,函数本质上也是一个对象。
构造函数是用函数来初始化一个新建对象,使用new运算符。JavaScript的构造函数并不是作为类的一个特定方法存在的;当任意一个普通函数用于创建一类对象时,它就被称作构造函数,或构造器。一个函数要作为一个真正意义上的构造函数,需要满足下列条件:
1、 在函数内部对新对象(this)的属性进行设置,通常是添加属性和方法。
2、 构造函数可以包含返回语句(不推荐),但返回值必须是this,或者其它非对象类型的值。
js中的匿名函数是一种很常见的函数类型,匿名函数可以简单理解为没有名字的函数,匿名函数的基本形式为:
(function(){...})();
前面的括号包含函数体,后面的括号就是给匿名函数传递参数并立即执行之,匿名函数的作用是避免全局变量的污染以及函数名的冲突。
js立即执行函数可以让你的函数在创建后立即执行,js立即执行函数模式是一种语法,可以让你的函数在定义后立即被执行,这种模式本质上就是函数表达式(命名的或者匿名的),在创建后立即执行。
立即执行函数的两种常见形式:( function(){…} )()和( function (){…} () ),一个是一个匿名函数包裹在一个括号运算符中,后面再跟一个小括号,另一个是一个匿名函数后面跟一个小括号,然后整个包裹在一个括号运算符中,这两种写法是等价的。要想立即执行函数能做到立即执行,要注意两点,一是函数体后面要有小括号(),二是函数体必须是函数表达式而不能是函数声明。
所谓“包装对象”,就是分别与数值、字符串、布尔值相对应的Number、String、Boolean三个原生对象。这三个原生对象可以把原始类型的值变成(包装成)对象。
原型是JavaScript中一个比较难理解的概念,原型相关的属性也比较多,对象有”prototype”属性,函数对象有”prototype”属性,原型对象有”constructor”属性。
因为每个对象和原型都有原型,对象的原型指向原型对象, 而父的原型又指向父的父,这种原型层层连接起来的就构成了原型链。
JavaScript作用域就是变量和函数的可访问范围,变量作用域分为全局作用域和局部作用域。
全局作用域:
1.没有用var声明的变量(除去函数的参数)都具有全局作用域,成为全局变量,所以声明局部变量必须要用var
2.window的所有属性都具有全局作用域
3.最外层函数体外声明的变量也具有全局作用域
1.函数体内用var声明的变量具有局部作用域,成为局部变量
2.函数的参数也具有局部作用域
总结:在函数体内局部变量的优先级高于同名的全局变量,声明局部变量必须用var
JavaScript是函数作用域(function scope),没有块级作用域。无论函数体内的变量在什么地方声明,对整个函数都是可见的,即JavaScript函数里声明的所有变量都被提前到函数体的顶部,只是提前变量声明,变量的赋值还是保留在原位置
函数作用域只能用函数来声明独立作用域,并不是每一个花括号都是一个独立作用域,例如:for循环并不能创建一个局部的作用域
JavaScript的变量都是对象的属性,而该对象可能又是其它对象的属性,而所有的对象都是全局对象的属性,所以这些对象的关系可以看作是一条链, 链头就是变量所处的对象,链尾就是全局对象
在不包含嵌套的函数体内,作用域链上有两个对象:
1.定义函数参数和局部变量的对象
2.全局对象
在包含嵌套的函数体内,作用域链上至少有三个对象。
闭包是函数和声明该函数的词法环境的组合,这个环境包含了这个闭包创建时所能访问的所有局部变量。 闭包的特点:
1. 作为一个函数变量的一个引用,当函数返回时,其处于激活状态。简单的说,Javascript允许使用内部函数---即函数定义和函数表达式位于另一个函数的函数体内。而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数和声明的其他内部函数。当其中一个这样的内部函数在包含它们的外部函数之外被调用时,就会形成闭包。
2. 一个闭包就是当一个函数返回时,一个没有释放资源的栈区。
计算机专业、互联网专业术语大全,值得大家收藏备用熟记的IT常用术语。这篇文章从不同的方式讲解IT行业常见技术及专业术语,为刚进入IT行业或对IT行业毫不了解的人群快速普及常见IT技术
函数式编程(FP)有许多优点,它也越来越流行了。然而,每个编程范式都有自己独特的术语,函数式编程也不例外。通过提供的这张术语表,希望使你学习函数式编程变得容易些。
函数式编程有许多优势,由此越来越受欢迎。然而每个编程范式 (paradigm) 都有自己唯一的术语,函数式编程也不例外。我们提供一张术语表,希望使你学习函数式编程变得容易些。
API应用程序接口(英语:Application Programming Interface,简称:API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。由于近年来软件的规模日益庞大,常常需要把复杂的系统划分成小的组成部分,编程接口的设计十分重要
变量,指值可以变的量。变量以非数字的符号来表达,一般用拉丁字母。变量的用处在于能一般化描述指令的方式。结果只能使用真实的值,指令只能应用于某些情况下。变量能够作为某特定种类的值中任何一个的保留器。
内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!