JavaScript详细介绍

JavaScript概述

JavaScript是一种通过解释执行的高级编程语言,同时也是一门动态,弱类型的脚本语言,适合面向对象(基于原型)和函数式的编程风格。解释语言可以直接在解释器中运行,而与解释语言相对的编译语言(例如C++),要先将代码编译成机器码,然后才能执行。不过解释语言有一个弱点,就是如果有一条不能运行,那么后面的就不能运行

名次解释
解释语言

:程序不需要编译,程序在运行时才翻译成机器语言,每执 行一次都要翻译一次。所以效率比较低,依赖解释器,跨平台性好

编译语言

: 程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,,跨平台性差些.

动态语言

: 是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化,类型的检查是在运行时做的,优点为方便阅读,清晰明了,缺点为不方便调试 Python、Ruby、Perl

静态语言

: 指在编译时变量的数据类型即可确定的语言,多数静态类型语言要求在使用变量之前必须声明数据类型 C++、Java、Delphi、C#

强类型语言

: 是一种强制类型定义的语言,一旦某一个变量被定义类型,如果不经过强制转换,则它永远就是该数据类型了,强类型语言包括Java、.net 、Python、C++等语言。

弱类型语言

弱类型语言: 是一种弱类型定义的语言,某一个变量被定义类型,该变量可以根据环境变化自动进行转换,不需要经过显性强制转换。弱类型语言包括vb 、PHP、javascript等语言。

强类型语言和弱类型语言区别

无论是强类型语言还是弱类型语言,判别的根本是是否会隐性的进行语言类型转变。强类型语言在速度上略逊于弱类型语言,但是强类型定义语言带来的严谨性又能避免不必要的错误

脚本语言

:脚本语言(Script languages,scripting programming languages,scripting languages)是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。此命名起源于一个脚本“screenplay”,每次运行都会使对话框逐字重复。早期的脚本语言经常被称为批处理语言或工作控制语言。一个脚本通常是解释运行而非编译。虽然许多脚本语言都超越了计算机简单任务自动化的领域,成熟到可以编写精巧的程序,但仍然还是被称为脚本。几乎所有计算机系统的各个层次都有一种脚本语言。包括操作系统层,如计算机游戏,网络应用程序,文字处理文档,网络软件等。在许多方面,高级编程语言和脚本语言之间互相交叉,二者之间没有明确的界限。一个脚本可以使得本来要用键盘进行的相互式操作自动化。一个Shell脚本主要由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组序列。主要用来书写这种脚本的语言叫做脚本语言。很多脚本语言实际上已经超过简单的用户命令序列的指令,还可以编写更复杂的程序。<百度百科>

JavaScript主要运行在一个内置JavaScript解释器的客户端(例如Web浏览器),能够处理复杂的计算,控制文档的内容,样式和行为,能够在客户端完成的操作(例如输入验证,日期计算等)尽量都有JavaScript完成,这样就能减少与服务器的通信,降低服务器的负载。但这么做也会带来一个问题,那就是安全性较低,因为所有的逻辑都暴露出来,不过好在有很多方法可以弥补,例如把脚本加密混淆。

完整的JavaScript有3部分组成,如下:

ECMAScript 定义了该语言的语法和定义
DOM(Document Object Model)即文档对象类型,处理文档内容的编程接口。
BOM(Brower Object Model)即浏览器对象吧模型,独立于内容与浏览器进行交互的接口

JavaScript的优势和劣势
优势:
1. JavaScript可以在客户点替服务器分担一些工作(例如数据验证,数学计算等),从而减少和服务器的交互次数,降低服务器的压力  
2. JavaScript比较容易上手,日常开发涉及的大部分语法比较简单。
3. 用户能快速得到页面上的反馈,除了一些必须与服务器通信的操作,例如提交数据,验证昵称重复等,这些操作会有无法避免的网络延迟 
而在其他的客户端运行的大部分操作,都能得到即时的反馈。
4. 跨平台,JavaScrip不会依赖操作系统(例如Window,iOS等)只要有浏览器,就能正常执行
5. 丰富界面,增强交互,JavaScript可以控制文档中的任何元素,定制元素的内容,样式或行为,也可以代替CSS实现复杂而多样
的动画或特效(例如点击元素改变背景色)
缺点:
1. 兼容性差,各个浏览器对JavaScript的支持程度不同,同一套脚本在不同的浏览器中的执行结果会不同,有的完美执行,有的可能提示错误。
2. 安全性低,由于JavaScript在客户端运行,用户不但可以查看JavaScript源代码,还能嵌入恶意代码,替换或禁用脚本。
3. 中断运行,JavaScript是一种解释语言,只要有一条出错,就会直接停止运行。
4. 权限限制,JavaScript不能直接与操作系统交互,中间隔了个浏览器,浏览器只赋予了JavaScript很少的权限,例如写文件都是不运行
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值