我真的知道JavaScript吗?
JavaScript
说说JavaScript
接触JavaScript时间其实已经不短了,之前一直是半瓶酱油,东凑西凑的收集相关的知识。并没有完整系统的学习过JavaScript,觉得JavaScript比起C、Java、C#类似的要简单多了,但是通过最近的学习,才感觉到自己是多么的肤浅。。PS:这里要打一下广告,最近我学习JavaScript是通过一本书学习的------《JavaScript高级程序设计》,这本书真的很不错,推荐给大家。
那么,到底什么是JavaScript?语言?脚本?程序?相信这些都是围绕ta的代名词。在我看来,要给ta下定义之前,不如看看ta到底是干什么的。我们知道ta绝大多数的工作场景是Browser,也就是浏览器。那么问题来了,浏览器怎么看待它?浏览器是通过网络分享信息的最为重要的一种工具,HTML代码提供信息来源,CSS提供展示信息的色彩、效果,而JavaScript的作用是浏览器与人分享信息的一种动态交互效果。总听到"用户体验",我的理解就是浏览器中所展现的内容是否容易被我们接受、获取。对于浏览器而言,JavaScript是什么?我认为,ta是一种最简单不过的文本(text),而这些text中一些特殊的字符被我们赋予了特殊的意义,浏览器通过解析引擎分析text中特殊的key-word从而实现各种效果和功能。浏览器是如何知道text那些是key-word?为什么'a'或'abc'不是一个keyword呢?刚开始,标准都是谁强谁说了算。。比如MS的JScript,以及Netscape的JavaScript,这时候,世界上有一个神奇的组织------ECMA(欧洲计算机制造商协会)统一了标准,也就是ECMAScript,从此以后,所有的浏览器制造商也都遵守了这个标准,所以现在的JavaScript也可以基于ECMAScript,虽然这两个看起来是相同的含义,但是JavaScript却要包含更多的内容。
这张图能告诉JavaScript和ECMAScript的关系:

- ECMAScript:也就是ECMA定义的核心标准
- DOM(文档对象模型):针对于HTML文档,由于HTML属于树形结构,所以可以用来操作HTML各个节点
- BOM(浏览器对象模型):针对于浏览器,例如 ,浏览器的窗口,弹出框都属于BOM对象
这些模型、标准就可以让我们操作网页中的元素,内容或者浏览器中的各个要素。今天大概说这么多,也是我对JavaScript的总体认识,明天具体分享一下JavaScript具体的内容。
我真的知道JavaScript吗?的更多相关文章
- JavaScript内部原理实践——真的懂JavaScript吗?(转)
通过翻译了Dmitry A.Soshnikov的关于ECMAScript-262-3 JavaScript内部原理的文章, 从理论角度对JavaScript中部分特性的内部工作机制有了一定的了解. 但 ...
- 你真的了解javascript吗
原文地址:http://dmitry.baranovskiy.com/post/91403200 看了文章中五个小例子,写了写自己的理解 #demo1 if (!("a" in w ...
- 你真的懂javascript中的 “this” 吗?
一.前言: 我们知道 "this" 是javascript语言的一个关键字,在编写javascript代码的时候,经常会见到或者用到它. 但是,有一部分开发朋友,对 "t ...
- 你真的懂JavaScript基础类型吗
夯实Javascript基础. 基本类型有六种: null,undefined,boolean,number,string,symbol. 基本类型的值是保存在栈内存中的简单数据段 基础类型特性 基础 ...
- 【前端知识体系-JS相关】你真的了解JavaScript编译解析的流程吗?
1. JS编译解析的流程 1.1 JS运行分三步 语法分析(通篇扫描是否有语法错误),预编译(发生在函数执行的前一刻),解释执行(一行行执行). 1.2 预编译执行分五步 创建AO对象(Activat ...
- 你必须知道的Javascript 系列
JavaScript是见过最多人说它“有趣”,“好玩”的一门语言.不仅仅是因为它的灵活性,包括它本身很多的特性,比如说原型链,作用域链都是非常好玩的东西.现在已经有很多的JavaScript设计模式, ...
- 图解JavaScript执行环境结构
JavaScript引擎在开始编译代码的时候,会对JavaScript代码进行一次预编译,生成一个执行环境,比如如下代码: window.onload=function(){ function sub ...
- 浅析JavaScript引用类型之--Object、Array
1.Object类型 对象是某个特定引用类型的实例,新对象有两种创建方式: i.使用new操作符调用构造函数来创建. var person = new Object(); person.name = ...
- 【翻译】Zakas解答Baranovskiy的JavaScript测验题
原文:http://www.nczonline.net/blog/2010/01/26/answering-baranovskiys-javascript-quiz/ ---------------- ...
随机推荐
- 自己为什么注册博客(csdn讲师:Array)
记录生活,记录技术,记录青春. 势若在己,则人力可以至:势若在人,则忧心亦无益. 倘若势不在己,该怎么办? 天下之势,本如流水.若流于他处,则处心积虑,断流开源,独占大势. 这是一个最好的时代,也是一 ...
- Spring-MVC请求参数值和向页面传值
读取请求参数值 方式一:通过HttpServletRequest req做参数 DispatcherServlet在调用处理的方法之前,利用Java反射分析方法的结构,通过分析,将req对象传过来 方 ...
- linux中文件I/O操作(系统I/O)
我们都知道linux下所有设备都是以文件存在的,所以当我们需要用到这些设备的时候,首先就需要打开它们,下面我们来详细了解一下文件I/O操作. 用到的文件I/O有以下几个操作:打开文件.读文件.写文件. ...
- C#构造函数、操作符重载以及自定义类型转换
构造器 构造器(构造函数)是将类型的实例初始化的特殊方法.构造器可分为实例构造器和类型构造器,本节将详细介绍有关内容. 实例构造器 顾名思义,实例构造器的作用就是对类型的实例进行初始化.如果类没有显示 ...
- H - transaction transaction transaction
https://vjudge.net/contest/184514#problem/H 题意: 一个商人为了赚钱,在城市之间倒卖商品.有n个城市,每个城市之间有且只有一条无向边连通.给出n个城市的货物 ...
- poj 1149经典网络流构图
题意:m个猪圈,n个客户,每个客户给出选则猪圈的钥匙和需要购买猪的个数,其中每次客户购买时客户选则的猪圈数量可以相互更换,问最大购买数量. 思路:以客户作为除源点汇点之外的点,然后对于每个猪圈从源点连 ...
- 聊一聊我们都熟知的 “ Java分层 ”
一.为什么要分层. 以前的我们,写代码的时候,都在main()方法中,出现了错误,就慢慢调试,这样浪费了我们很长的时间,而我们程序员的时间是非常宝贵的 但是当我们使用分层架构的时候,就可以清晰明确的知 ...
- webservice Dome--一个webservice的简单小实例
1.理解:webservice就是为了实现不同服务器上不同应用程序的之间的通讯 2.让我们一步一步的来做一个webservice的简单应用 1)新建一个空的web应用程序,在程序上右键,新建项目,选择 ...
- 201521123012 《Java程序设计》第三周学习总结
一.本章学习总结 1.面对对象:(1)类 <1>属性 [1]外部类 [2]内部类 <2>方法 [1]j静态 [2]非静态 (2)对象 <1>创建对象 <2&g ...
- 201521123096《Java程序设计》第十二周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 将Student对象(属性:int id, String name,int age,doubl ...