JavaScript初识

晚上看了JavaScript权威指南概述,大概记录下今天的知识

一:因为非科班出身,做ios几年了今天看了一点JavaScript发现接触过的c,object-c,java,JavaScript,原来在计算机语言中数据结构基本上是通用的,只不过表现形式上大同小异。小白如我,平时用那么多连基本概念还不清楚哈哈。引用列一下:

数据结构重在思想,每种语言的数据结构只是根据算法的需要进行改动,在表现形式上大同小异,数据结构是为了对数据进行操作而设计的结构。

数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。

编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。

二:JavaScript是弱类型的,动态的,高端的编程语言,非常适合面向对象和函数式编程风格,这里的高端哈哈不理解,弱类型应该可以理解为它不像c,oc内不同类型转换之间需要强制转换,不过无法保证变量的类型,感觉跟swift语法很像。动态怎么说,看到有段代码可在创建好的数组中通过赋值添加新元素,好神奇有木有,不存在要指定边界的说法……上图片:

JavaScript初识_第1张图片
图片发自App

大概可以这么理解吧,后续再看。这里要说明下,解释型语言跟编译型的区别,以下为引用:

1.编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。

2.解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。

3.C/C++ 等都是编译型语言,而Java,C#等都是解释型语言。

4.虽然Java程序在运行之前也有一个编译过程,但是并不是将程序编译成机器语言,而是将它编译成字节码(可以理解为一个中间语言...ps:哇,想到平时接触到的React Native,ios项目里中间件的实现)。

在运行的时候,由JVM将字节码再翻译成机器语言。

5.脚本语言一般都有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。JAVASCRIPT,ASP,PHP,PERL,Nuva都是脚本语言。C/C++编译、链接后,可形成独立执行的exe文件。

三:概述里一些需要着重看下的概念

1.构造函数与this关键字


图片发自App

需要注意的是IE下使用的是JScript引擎的,而标准浏览器下是SpiderMonkey Javascript引擎的,不同的javascript引擎对eval()所使用的闭包环境的理解并不相同。

2:考虑到浏览器的兼容性,可用一些库或者框架来简化工作,现在的web浏览器都包含了JavaScript解释器,它也提供了基本的输入输出功能,包括网络,存储以及图形相关的复杂特性,而JavaScript语言核心针对文本,数组,日期,正则等操作则定义了少量API

图片发自App

今天就这样吧……900多页才看了几十页,不过概述基本所有的层面都涉及了点,应该后面的节奏会很快,坚持更新啦。

你可能感兴趣的:(JavaScript初识)