《JavaScript权威指南》读书笔记(1)-概述

JavaScript 概述

JavaScript是一门高端的、动态的、弱类型的编程语言,非常适合面向对象和函数式的编程风格。JavaScript的语法源自Java,它的一等函数来自于Scheme,它的基于原型的继承来自于Self。

JavaScript早已超出了其“脚本语言”本身的范畴,而成为一种集健壮性、高效性和通用性为一身的编程语言。

JavaScript:名字和版本
ECMAScript和Jscript和JavaScript都是JavaScript的名字,使用JavaScript外其他名字的原因是商标冲突。ECMA提出ECMAScript的一套标准。
JavaScript简写JS, ECMAScript3和ECMAScript5简写为ES3和ES5。
Google的JavaScript解释器叫做V8。

JavaScript语言核心针对文本、数组、日期和正则表达式的操作定义了很少的API,但是这些API不包括输入输出功能。输入和输出功能(类似网络、存储和图形相关的复杂特性)是由JavaScript所属的“宿主环境”提供的。(“宿主环境”通常是Web浏览器)

JavaScript语言核心一览

//为注释
var x;	//声明变量x
x = null;
x = undefined;	//undefined和null很类似,但不同
//JavaScript中最重要的类型为对象, 如下:
var book = {	//{}括起来的是对象
    topic: "JavaScript",
    fat: true;
};
//通过.或[]来访问对象属性
book.topic
book["fat"]
book.author = "Flanagan";	//通过赋值创建一个新属性
book.contents = {};			//{}是一个空对象,没有属性

//JavaScript同样支持数组(Python语言本身没有)
var primes = [2, 3, 5, 7];
primes[0]	//数组中引索为0的元素(第一个元素)
primes.length	//数组中的元素个数
primes[primes.length - 1]	//数组的最后一个元素
primes[4] = 9;	//通过赋值语句来添加新元素
primes[4] = 11;	//通过赋值语句来改变已有元素
var empty = [];		//[]是空数组,具有0个元素
empty.length	//0

//数组和对象中可以包含另一个数组或对象, eg.
var points[
    {x: 0, y: 1},
    {x: 1, y: 2}
];

//运算符与C/Java类似,不赘述

//函数, eg.
var square = function(x){
    return x*x;
};

//函数和对象合写在一起时,“函数”就变成了“方法”
//Ps:在JavaScript中数组和函数也是对象
points.dist = function(){	//新增一个属性,且该属性为dist函数
    return Math.sqrt(5);
}

相关知识

表达式与语句的关系

自行百度

声明

JavaScript中,全局变量可声明可不声明(建议声明),局部变量必须使用var声明。

重复声明变量是合法且无害的,如果重复声明带有初始化器,则等效于赋值语句。

如果局部变量遗漏声明,则会报错。

Ps:JavaScript中不存在块级作用域,且在JavaScript中,所有的声明都会提前,在执行代码块时,所有的声明都会提前执行,因此表达式语句可以在声明前使用。

posted @ 2018-08-29 14:41  jeffmeoi  阅读(94)  评论(0)    收藏  举报