JavaScript是什么
JavaScript是一种解释型语言而不是编译型语言,它往往被认为是一种脚本语言,而不被看作是一种真正的编程语言。也就是说,脚本语言比较简单,它们是非程序员所使用的编程语言。
如果一个程序员对JavaScript没有扎实的理解,那么当他要用JavaScript执行较复杂的任务时,就会发现整个过程困难重重。
根据ECMA-262标准,JavaScript语言的官方名称是ECMAScript。但是,这个笨拙的名字只有在明确地引用标准的时候才正式使用。从技术上讲,“JavaScript”的名字所指的只是来自Netscape和Mozilla Foundation的语言实现。而实际上,所有人都把这种语言叫做JavaScript。
客户端JavaScript将JavaScript解释器的脚本化能力与Web浏览器定义的文档对象模型(Document Object Model,Dom)结合在一起。
JavaScript不仅能够控制HTML文档的内容,而且能够控制这些文档的行为。
JavaScript是一种通用目的的编程语言,并且它的用途不局限与Web浏览器。JavaScript设计用来嵌入其他任何的应用之中,并为应用提供脚本能力。
需要真正学会一种新的编程语言,就要用它来编写程序。
对于简单的JavaScript试验,有时可以使用JavaScript:URL伪协议来计算JavaScript表达式并返回计算结果。一个JavaScript URL是由JavaScript:协议说明符加上任意的JavaScript代码(语句之间用分号分隔)构成的。当浏览器装载了这样的URL时,它将执行其中的JavaScript代码。这样的URL中的最后一个表达式的值将被转换成字符,该字符串会被作为新文档显示在Web浏览器中。
程序设计语言的词法结构是一套基本规则,用来详细说明如何用这种语言来编写程序。它是一种语言的最低层次的语法,指定了变量名是什么样的,注释应该使用什么字符以及语句之间如何分隔等规则。
JavaScript程序是用Unicode字符集编写的。16位的Unicode编码可以表示地球上通用的每一种书面语言。这是国际化的一个重要特征,对那些不讲英语的程序设计者尤为重要。
JavaScript是一种区分大小写的语言。
HTML中这些标记和属性名可以使用任意的大小写方式输入,但是在JavaScript中它们通常都是小写的。
直接量,就是程序中直接显示出来的数据值。
标识符,就是一个名字,是用来命名变量和函数,或者用作JavaScript代码中某些循环的标签。第一个字符必须是字母、下划线或美元符号。标识符不能和JavaScript中用于其他用途的关键字同名。
保留字,break、do、if、switch、typeof、case、else、in、this、var、catch、false、instanceof、throw、void、continue、finally、new、true、while、default、for、null、try、with、delete、function、returne。
在一种程序设计语言中,能够表示并操作的值的类型称为数据类型,而程序设计语言最基本的特征之一就是它支持的数据类型的集合。JavaScript允许使用3种基本数据类型--数字、文本字符串和布尔值。还有两种小数据类型null(空)和undefined(未定义),它们各自定义了一个值。
JavaScript还支持符合数据类型--对象。JavaScript中的对象有两种,一种对象表示的是已命名的值的无序集合,另一种表示的是有编号的值的有序集合,后者被称为数组(Array)。
特殊的对象——函数(Function)。函数是具有可执行代码的对象,可以用作调用函数执行某些操作。函数的行为与其他类型的对象不同。
Javascript和其他程序设计语言的不同之处在于它并不区别整型数值和浮点型数值。在JavaScript中所有的数字都是由浮点型表示的。JavaScript数字格式允许精确表示-9007199254740992(-2^53)和9007199254740992(2^53)之间的所有整数,但是使用超过这个范围的整数,就会失去尾数的精确性。
转义序列,在JavaScript的字符串中,反斜线(\)具有特殊的用途。在反斜线符号后加一个字符就可以表示在字符串中无法出现的字符了。
JavaScript是什么的更多相关文章
- JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议
		软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ... 
- javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈
		Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ... 
- Javascript 的执行环境(execution context)和作用域(scope)及垃圾回收
		执行环境有全局执行环境和函数执行环境之分,每次进入一个新执行环境,都会创建一个搜索变量和函数的作用域链.函数的局部环境不仅有权访问函数作用于中的变量,而且可以访问其外部环境,直到全局环境.全局执行环境 ... 
- 探究javascript对象和数组的异同,及函数变量缓存技巧
		javascript中最经典也最受非议的一句话就是:javascript中一切皆是对象.这篇重点要提到的,就是任何jser都不陌生的Object和Array. 有段时间曾经很诧异,到底两种数据类型用来 ... 
- 读书笔记:JavaScript DOM 编程艺术(第二版)
		读完还是能学到很多的基础知识,这里记录下,方便回顾与及时查阅. 内容也有自己的一些补充. JavaScript DOM 编程艺术(第二版) 1.JavaScript简史 JavaScript由Nets ... 
- 《Web 前端面试指南》1、JavaScript 闭包深入浅出
		闭包是什么? 闭包是内部函数可以访问外部函数的变量.它可以访问三个作用域:首先可以访问自己的作用域(也就是定义在大括号内的变量),它也能访问外部函数的变量,和它能访问全局变量. 内部函数不仅可以访问外 ... 
- JavaScript权威指南 - 函数
		函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ... 
- JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
		今天为大家分享一下我自己制作的浏览器滚动条,我们知道用css来自定义滚动条也是挺好的方式,css虽然能够改变chrome浏览器的滚动条样式可以自定义,css也能够改变IE浏览器滚动条的颜色.但是css ... 
- JavaScript进阶之路(一)初学者的开始
		一:写在前面的问题和话 一个javascript初学者的进阶之路! 背景:3年后端(ASP.NET)工作经验,javascript水平一般般,前端水平一般般.学习资料:犀牛书. 如有误导,或者错误的地 ... 
- 梅须逊雪三分白,雪却输梅一段香——CSS动画与JavaScript动画
		CSS动画并不是绝对比JavaScript动画性能更优越,开源动画库Velocity.js等就展现了强劲的性能. 一.两者的主要区别 先开门见山的说说两者之间的区别. 1)CSS动画: 基于CSS的动 ... 
随机推荐
- 洛谷 1979 华容道——最短路+dp
			题目:https://www.luogu.org/problemnew/show/P1979 感到无从下手.但不妨用dp的角度来看.因为空格只有在指定棋子的旁边才有用,所以状态记成制定棋子的位置与空格 ... 
- poj2356Find a multiple——鸽巢定理运用
			题目:http://poj.org/problem?id=2356 N个数,利用鸽巢定理可知应有N+1个前缀和(包括0),因此其%N的余数一定有重复: 同余的两个前缀和之差一定为N的倍数,据此得出答案 ... 
- Asp.Net 无法获取IIS拾取目录的解决办法[译]
			Asp.Net 无法获取IIS拾取目录的解决办法 作者:Jason Doucette [MCP] 翻译:彭远志 原文地址:Fixing the cannot get IIS pickup direc ... 
- java.lang.ClassCastException:android.widget.Button cannot be cast to android.widget.ImageView
			今天遇到一个错误也不知道怎么回事,上网搜了一下: 出现的问题是:java.lang.ClassCastException:android.widget.Button cannot be cast to ... 
- MATLAB实现回归分析
			下面是一道例题 
- 容易忘记的css属性和动画属性
			动画属性 @keyframes 关键帧 --> animation 活泼 (配合使用) transform 变换 --> transition 过渡 (配合使用) 1.animation ... 
- ue4-C++中加载一个蓝图类(二)-C++中绑定Blueprint武器
			editor中编辑好一个武器蓝图资源后,c++中create出这个武器,然后attach到一个人物身上. 思路: 写个c++基类,蓝图继承后编辑成武器或其他装备,然后c++用一个TSubclassO ... 
- Node.js 内置模块crypto加密模块(5) RSA
			RSA加密算法 写在前面: 了解RSA算法的原理请查看下面的文章 一文搞懂 RSA 算法 来源:简书 作者:somenzz 在使用 Node 进行 RSA 加密之前我们首先需要获取RSA公共和私有密 ... 
- mui框架使用心得
			这段时间一直在用mui框架做项目,现在很多快速开发的app大部分是用MUI和APICloud开发的.所以我就把他们对比了一下. mui有自己的UI组件,我在项目中,很少用框架的UI组件,而使用框架的j ... 
- Spring - SpringIOC容器详解
			一.什么是Spring IOC: Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想. 在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是 ... 
