JS权威指南读书笔记----20180801

1. 字符串的使用

JS内置功能之一,字符串连接。

“+”号也可以用于字符串连接

例如:

msg = "hello," + "world" ; //生成字符串“hello,world”

如果要得到字符串s的长度 s.length

2.模式匹配

JS定义了RegExp()构造函数,用来创建表示文本匹配模式的对象。这些模式成为正则表达式。

RegExp并不是JS的基本类型。它只是一种具有实用的API的特殊对象。

3.null和underfined

null是JS语言的关键字,常用来描述空值。

如果要查询对象的属性或数组元素的值时返回undefined则说明这个属性或元素不存在

如果函数没有返回任何值,则返回undefined。

null和undefined都不包含任何属性和方法

4.全局对象

全局对象的初始属性并不是保留字,但他们应该当做保留字来对待。

在代码的最顶级————不在任何函数内的JS代码————可以使用JS关键字this来引用全局对象

例如:

var global = this;//定义一个引用全局对象的全局变量

5.包装对象

JS对象是一种复合值:它是属性或已命名值得集合。通过“.”符号来引用属性值。当属性值是一个函数的时候,称其为方法。通过o.m来调用对象o中的方法。

字符串不是对象为什么会有属性:

只要引用了字符串s的属性,JS就会将字符串值通过调用New String(s)方式转换成对象,这个对象继承了字符串的方法。

var s = "test" ;

s.len = 4 ;

var t = s.len ;

当运行这段代码的时候,t的值是undefined。第二行创建一个临时字符串对象,并给len属性赋值4,随即销毁这个对象。第三行通过原始的(没被修改过)字符串值创建一个新字符串对象,尝试读取len属性,这个属性自然不存在,表达式求值结果为undefined。

存取字符串、数字或布尔值属性时创建的临时对象被称为包装对象,它只是偶尔用来区分字符串值和字符串对象、数字和数值以及布尔值和布尔值对象。

6.变量声明

变量是用var关键字来声明

var i,sum;//通过一个var关键字声明多个变量

7.变量作用域

在函数体内,局部变量的优先级高于同名的全局变量

 

你可能感兴趣的:(JavaScript)