解答逻辑:从背景》主要功能》语言特点》编译模式解答。
1.背景:js是一种具有函数优先的轻量级,解释型或及时编译性语言。js基于原型编辑,多范式的动态脚本语言语言。同时能他的实际语法偏向java但是他的构成收到self和scheme影响不叫神,但是编程方式借鉴了很多java。
其中可能问的问题:
(1)函数优先的轻量级语言:具体来说,js确实是一种以函数为核心的语言,函数在js中,具有很高的灵活性和重要性,同时他也可以被视为一种轻量级语言,因为它的语言相对简洁,学习曲线较低。
(2).解释型或及时编译性语言:js通常被描述为一种解释型语言及时编译性语言,在因为它在运行时由浏览器的js引擎解释执行。及时编译性语言:体现在v8引擎使用了JIT(即时编译)技术,他是直接将js代码编译成机器码,然后全编译完执行,他这么做的核心原因:还是他大部分是由js写的。
而它的解释型语言,SpiderMonkey 引擎火狐的引擎,等大多数的引擎都是逐行解释js代码,然后将他转换成相应的操作,然后执行操作,他的优势是快速运行简单的js代码,对于短时执行代码很友好。
(3)基于原型编辑:js是一种基于原型的面向对象语言,他是使用原型链来实现对象之间的继承关系,而不是传统的类继承模型例如java()。
(4)多范式的动态脚本语:js是一种多范式语言,他支持多种编程范式,包括面向对象编程,函数式编程和命令行式编程。他也是一种动态语言,允许在运行时动态的修改和创建对象,函数等。
(5)语法偏向于 Self 和 Scheme:slet和 Scheme具体是什么样的我不太会因为好老了,但是self是一种面向对象的动态语言,而Scheme则是一种函数式编程语言,js的函数编程和原型继承很大是收到他的影响,语法和java类似
(6)Js语法都有什么:例如变量声明 var,let,const关键字来声明变量,数组类型,运算符,条件语句,循环语句,函数定义,对象和属性,数组操作,闭包。当然还有箭头函数,解构赋值,类和模块等。
2.主要功能:用来操作HTML和XML文件,和浏览器进行交互,node的开发语言。
(1)可能问到的问题:HTML和XML什么区别:主要还是因为HTML不能扩展,也没有什么语言结构,那么XML的出现就是因为来解决这些问题。
3.语言构成:ECMAscript,描述了该语言的语法和基本对象。DOM(文档对象模型),BOM(浏览器对象模型)
可能出现的问题
(1)DOM是什么:应该是说dom对象是浏览器根据html标签生产的JS对象,所以的标签属性都在这个对象上面,然后再通过修改对象的属性自动映射到标签身上。他的核心思想就是把网页内容当做对象来处理他的顶级对象是document然后是Root element(html)然后是element(head)(body)
(2)BOM是什么:浏览器对象模型,主要是用来描述组合中对象与对象和字键之间的层次关系的模型,并且浏览器对象模型提供了独立于内容的,可以与浏览器窗口进行交互的对象结构,BOM的顶级对象是Window对象是里面有(location,history什么的)可以与浏览器的api交互
4.语言特点:
1.脚本语言。2,基于对象编译。3,简单原因:是弱类型语言。4,动态性。5.跨平台型。
可能问到的问题:
1.脚本语言是什么:一种用于编写脚本的编程语言。脚本是一些列命令或者指令的集合,相比较传统的编译型语言(C++,java),脚本语言不需要编译成机器码,而是通过解释器逐行执行的。
2.js的一切皆为对象,js是一种基于对象的脚本语言。
3.为什么简单:弱类型语言。
4.动态性:js是一种采用事件驱动的脚本语言,他不需要经过web服务器就可以对用户的输入做出响应,例如点击事件这种直接就给出相应
5.跨平台性:因为js脚本语言不依赖于操作系统,仅仅需要浏览器的支持。所以只要机器的浏览器支持那么所有都可以使用。
5.编译模式:同上面背景的编译型语言和即时编译型语言的解释一样。