摘要:每个构造函数定义了一类对象,表示由构造函数初始化对象的集合。严格模式下,明确禁止八进制数。日期和时间构造函数用来创建表示日期和时间的对象,包含方法。模式匹配函数是一个构造函数,创建正则表达式。布尔值表示两种状态,使用保留字和。
《Javascript权威指南》就是前端工程师口中常说的犀牛书,得名是因为中文翻译出版的书籍封面是一只犀牛,是学习JavaScript的必读书籍。JavaScript概述
JavaScript与Java无关,是面向Web的编程语言。
前端开发工程师必备的三样技能:描述网页内容的HTML;描述网页样式的CSS和描述网页行为的JavaScript。
JavaScript是高端的、动态的、弱类型的编程语言,非常符合面向对象和函数式编程的思想。
EMCAScript是JavaScript的标准。
JavaScript语言核心针对文本、数组、日期和正则表达式定义了许多API,但本身并不提供输入输出功能,输入输出功能由JavaScript的宿主环境(通常指的是web浏览器)提供。
词法结构 字符集使用Unicode字符集,该字符集是ASCII和Latin-1的超集。
区分大小写。
通常忽略换行符、制表符和连续空格。
转义序列以u开头,使用4个十六进制字符表示
允许多种方式对同一个字符编码,并定义了标准化的解码方式。
注释在行尾“//”之后的文本都会被JavaScript认为是注释并被解释器忽略。
还可以使用“/”和“/”来包含一段多行注释,可以跨行书写,但不可以嵌套。
直接量就是在程序中直接使用的数据值。例如:整数和小数,字符串,布尔值,null,正则表达式,对象,数组。
标识符和保留字用来对变量和函数命名的名字和标记
必须以字符、下划线(_)、美元符号($)开头,后续可以使用字符、数字、下划线、美元符号。注意数字不允许作为开头出现,以便解释器可以区分标识符和数字。
支持所有的Unicode字符集,但是为了移植性考虑,建议只是用Unicode字符和数字。
被拿来做自己的关键字的标识符被称为保留字。
具体实现可能定义独有的全局变量和函数,每种JavaScript运行环境都有全局属性列表。
可选的分号使用分号分隔语句。
当每条语句独占一行时,可以省略分号。
解释器在缺少分号就无法运行的情况下会自动添加分号(注意不一定是每个换行符处)。
return break continue之后的表达式不能使用换行,虽然多数情况下不会报错,但会产生逻辑错误。
类型、值和变量表示并操作的值的类型称作数据类型。
变量是值的符号名称,可以通过名称来获得对值的引用。
JavaScript的数据类型分为两类:原始类型和对象类型。
原始类型包括数字、字符串和布尔值。除此之外还有两个特殊的原始值:null和undefined。
对象是属性的集合,每个属性都由“名/值对”(值可以是原始值,也可以是对象)构成。
普通的JavaScript对象是“命名值”的无序集合,数组是有序集合。
函数也是一种特殊的对象。
初始化(使用new运算符)一个新建的对象,我们称为构造函数。
每个构造函数定义了一类(class)对象,表示由构造函数初始化对象的集合。
JavaScript语言核心定义了Array,Function,Date,RegExp和Error特殊的对象。
解释器有自己的内存管理机制,可自动进行内存的垃圾回收,当不再有任何应用指向一个对象,该对象所占内存资源被回收。
JavaScript自由进行数据类型转换。
变量是无类型的,可以被赋予任何类型的值,使用var声明变量。
数字不区分整数值和浮点数值,所有数字均用浮点数值表示。
采用IEEE754标准定义的64位浮点格式表示数字,实际操作时则是基于32位整数。
数字直接量前添加(-)号可以得到负值,(-)是一元求反运算符。
整型用一个数字序列表示十进制整数。
以“0x”和“0X”位前缀的是十六进制直接量,其后用0-9和A-F表示。
ECMAScript标准不支持八进制表示,但是某些实现允许采用八进制表示整数。以数字0为前缀,0-7的序列表示八进制数。
严格模式下,明确禁止八进制数。
浮点型直接量可以含有小数点,采用传统的实数写法,由整数部分,小数点和小数部分组成。
还可采用指数计数法表示,实数后面跟字母e或者E,再加指数。
算术运算算数运算符是用来进行数字运算的。包括加法运算符(+),减法运算符(-),乘法运算符(*),除法运算符(/)和求余运算符(%)。
除基本运算符外,还支持更加复杂的算术运算,通过作为Math对象的属性定义的函数和常亮实现。
算术运算溢出、下溢或被零整除时不会报错,结果为特殊值。
溢出时表示Infinity(正无穷)或-Infinity(负无穷)。基于它们的算术运算结果还是Infinity(保留正负号)。
下溢表示为“负零”。返回0,很少用到。
被零整除时用无穷表示,零除以零则用NaN表示,除此之外,无穷除以无穷,给负数开方都会得到NaN。
NaN不等于自身,判断NaN为isNaN()方法,判断无穷使用isFinite()方法。
二进制浮点数和四舍五入错误IEEE-754浮点数表示法是一种二进制表示法。
可以精确表示1/2、1/8和1/1024这种,但是无法精确表示1/10、1/100等。无法精确表示0.1,所以0.3-0.2==0.2-0.1返回一个false。
日期和时间Date()构造函数用来创建表示日期和时间的date对象,包含getFullYear()、getMonth()、getDate()、getDay()、getHours()、getUTCHours()方法。
文本字符串是16位不可变的有序序列。
采用UTF-16编码的Unicode字符集。
字符串直接量字符串直接量可以写在多行中,但每行必须以结束。
转义字符之后加一个字符就不在表示他们的字面含义,例如n表示一个换行符。
字符串的使用+表示字符串连接,将第二个字符串拼到第一个字符串的后面。
length属性表示字符串的长度。
字符串固定不变,变化是因为返回了新的字符串。
模式匹配RegExp()函数是一个构造函数,创建正则表达式。
布尔值表示两种状态,使用保留字true和false。
包含toString()方法,可以转换成‘true’和‘false’
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/108080.html
摘要:然而,虽然先生对无所不知,被誉为世界的爱因斯坦,但他的语言精粹并不适合初学者学习。即便如此,在后面我还是会建议把当做补充的学习资源。但目前为止,依然是学习编程的好帮手。周正则表达式,对象,事件,阅读权威指南第,,,章。 既然你找到这篇文章来,说明你是真心想学好JavaScript的。你没有想错,当今如果要开发现代网站或web应用(包括互联网创业),都要学会JavaScript。而面对泛...
摘要:其中负载均衡那一节,基本上是参考的权威指南负载均衡的内容。开发指南读了一半,就是看这本书理解了的事件循环。哈哈创京东一本骗钱的书。 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯IVWEB团队 发表于云+社区专栏作者:link 2014年一月以来,自己接触web前端开发已经两年多了,记录一下自己前端学习路上看过的,以及道听途说的一些书,基本上按照由浅入深来介绍...
摘要:其中负载均衡那一节,基本上是参考的权威指南负载均衡的内容。开发指南读了一半,就是看这本书理解了的事件循环。哈哈创京东一本骗钱的书。 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯IVWEB团队 发表于云+社区专栏作者:link 2014年一月以来,自己接触web前端开发已经两年多了,记录一下自己前端学习路上看过的,以及道听途说的一些书,基本上按照由浅入深来介绍...
摘要:其中负载均衡那一节,基本上是参考的权威指南负载均衡的内容。开发指南读了一半,就是看这本书理解了的事件循环。哈哈创京东一本骗钱的书。欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯IVWEB团队发表于云+社区专栏 作者:link 2014年一月以来,自己接触web前端开发已经两年多了,记录一下自己前端学习路上看过的,以及道听途说的一些书,基本上按照由浅入深来介绍。...
阅读 1432·2023-04-25 19:51
阅读 1928·2019-08-30 15:55
阅读 1741·2019-08-30 15:44
阅读 2698·2019-08-30 13:58
阅读 2691·2019-08-29 16:37
阅读 1071·2019-08-29 15:34
阅读 3995·2019-08-29 11:05
阅读 2619·2019-08-28 17:51