js基础术语和概念总结

合集下载

JS核心知识梳理

JS核心知识梳理

JS核⼼知识梳理前⾔本⽂⽬标从JS的运⾏,设计,数据,应⽤四个⾓度来梳理JS核⼼的知识点主题⼤纲1. JS运⾏变量提升执⾏上下⽂作⽤域let作⽤域链闭包事件循环2. JS设计原型原型链thiscallapplybindnew继承3. JS数据数据类型数据的存储(深浅拷贝)数据类型判断(隐式转换,相等和全等,两个对象相等)数据的操作(数组遍历,对象遍历)数据的计算(计算误差)4. JS应⽤防抖,节流,柯⾥化⼀. JS运⾏⼤概分为四个阶段1. 词法分析:将js代码中的字符串分割为有意义的代码块,称为词法单元浏览器刚拿到⼀个JS⽂件或者⼀个script代码段的时候,它会认为⾥⾯是⼀个长长的字符串这是⽆法理解的,所以要分割成有意义的代码块,⽐如: var a = 12. 语法分析:将词法单元流转换成⼀颗抽象语法树(AST),并对⽣成的AST树节点进⾏处理,⽐如使⽤了ES6语法,⽤到了let,const,就要转换成var。

为什么需要抽象语法树呢?抽象语法树是不依赖于具体的,不依赖于语⾔的细节,⽅便做很多的操作另⼀⽅⾯说,现在有许多语⾔,C,C++,Java,Javascript等等,他们有不同的语⾔规范但是转化成抽象语法树后就都是⼀致的了,⽅便编译器对其进⾏进⼀步的增删改查等操作,3. 预解析阶段:会确定作⽤域规则变量和函数提升4. 执⾏阶段:创建执⾏上下⽂,⽣成执⾏上下⽂栈执⾏可执⾏代码,依据事件循环1.作⽤域指定了函数和变量的作⽤范围分为全局作⽤域和函数作⽤域,JS不像C,JAVA语⾔⼀样,没有块级作⽤域,简单说就是花括号的范围2.变量和函数提升全局变量和函数声明会提升函数声明⽅式有三种,function foo() {}var foo = function () {}var foo = new Function()可归为两类,直接创建和变量赋值变量赋值函数和赋值普通变量的优先级按位置来,变量名相同前者被覆盖函数直接创建优先级⾼于变量赋值,同名取前者,与位置⽆关,也就是说函数直接创建即使再变量声明后⾯,也是优先级最⾼3. 执⾏上下⽂有不同的作⽤域,就有不同的执⾏环境,我们需要来管理这些上下⽂的变量执⾏环境分为三种,执⾏上下⽂对应执⾏环境全局执⾏环境函数执⾏环境eval执⾏环境(性能问题不提)1. 全局执⾏上下⽂先找变量声明,再找函数声明2. 函数执⾏上下⽂先找函数形参,和变量声明把实参赋值给形参找函数声明多个函数嵌套,就会有多个执⾏上下⽂,这需要执⾏上下⽂栈来维护,后进先出执⾏上下⽂⾥包含着变量环境和词法环境变量环境⾥就包含着当前环境⾥可使⽤的变量当前环境没有⽤哪的, 这就说到了作⽤域链4. 作⽤域链引⽤JS⾼程的定义:作⽤域链来保证对执⾏环境有权访问的变量和函数的有序访问变量的查找顺序不是按执⾏上下⽂栈的顺序,⽽是由词法作⽤域决定的词法作⽤域也就是静态作⽤域,由函数声明的位置决定,和函数在哪调⽤⽆关,也就js这么特殊5. 静态作⽤域和动态作⽤域词法作⽤域是在写代码或者定义时确定的⽽动态作⽤域是在运⾏时确定的(this也是!)var a = 2;function foo() {console.log(a); // 静态2 动态3}function bar() {var a = 3;foo();}bar();复制代码闭包由于作⽤域的限制,我们⽆法在函数作⽤域外部访问到函数内部定义的变量,⽽实际需求需要,这⾥就⽤到了闭包引⽤JS权威指南定义:闭包是指有权访问另⼀个函数作⽤域中的变量的函数1. 闭包作⽤for循环遍历进⾏事件绑定输出i值时为for循环的长度+1这结果显⽰不是我们想要的, 因为JS没有块级作⽤域,var定义的i值,没有销毁,存储与全局变量环境中在事件具体执⾏的时候取的i值,就是全局变量中经过多次计算后的i值for(var i = 0;i < 3;i++){document.getElementById(`item${i+1}`).onclick = function() {console.log(i);//3,3,3}}复制代码闭包特性:外部函数已经执⾏结束,内部函数引⽤外部函数的变量依然保存在内存中,变量的集合可称为闭包在编译过程中,对于内部函数,JS引擎会做⼀次此法扫描,如果引⽤了外部函数的变量,堆空间创建换⼀个Closure的对象,⽤来存储闭包变量利⽤此特性给⽅法增加⼀层闭包存储当时的i值,将事件绑定在新增的匿名函数返回的函数上for(var i = 0;i < 3;i++){document.getElementById(`item${i+1}`).onclick = make(i);}function make(e) {return function() {console.log(e)//0,1,2};复制代码闭包注意我们在不经意间就写成了闭包,内部函数引⽤外部函数的变量依然保存在内存中,该销毁的没有销毁,由于疏忽或错误造成程序未能释放已经不再使⽤的内存,就造成了内存泄漏同时注意闭包不会造成内存泄漏,我们错误的使⽤闭包才是内存泄漏事件循环JS代码执⾏依据事件循环JS是单线程,通过异步保证执⾏不被阻塞1. 执⾏机制简单说就是,⼀个执⾏栈,两个任务队列发现宏任务就放⼊宏任务队列,发现微任务就放⼊微任务队列,执⾏栈为空时,执⾏微任务队列所有微任务,再取宏任务队列⼀个宏任务执⾏如此循环2. 宏&微任务 macroTask: setTimeout, setInterval, I/O, UI rendering microTask: Promise.then⼆. JS设计1. 原型1. JS的设计有new操作符,构造函数,却没有类的概念,⽽是使⽤原型来模拟类来实现继承2. JS设计⼼路历程JS在设计之初,给的时间较短,并且定义为简单的⽹页脚本语⾔,不⽤太复杂,且想要模仿Java的理念,(这也是为什么JS叫JavaScript的原因)因此就借鉴了Java的对象、构造函数、new操作符理念,⽽抛弃掉了了复杂的class(类)概念3. 继承机制需要有⼀种继承的机制,来把所有对象联系起来,就可以使⽤构造函数但是构造函数⽣成实例对象的缺点就是⽆法共享属性和⽅法4. prototype属性为解决上⾯问题,就引⼊了prototype属性,就是我们常说的原型为构造函数设置⼀个prototype属性,实例对象需要共享的⽅法,都放在此对象上,整个核⼼设计完成后,后⾯的API也就顺理成章原型每⼀个js对象在创建的时候就会与之关联另⼀个对象这个对象就是原型,每个对象都会从原型继承属性proto每个对象都有⼀个属性叫proto,该属性指向对象的原型构造函数的prototype属性等于实例化对象的proto属性此属性并不是ES5 中的规范属性,只是为了在浏览器中⽅便获取原型⽽做的⼀个语法糖,我们可以使⽤Object.getPrototype()⽅法获取原型constructor 原型没有指向实例,因为⼀个构造函数可以有多个对象实例但是原型指向构造函数是有的,每个原型都有⼀个constructor属性指向关联的构造函数function Per() {} // 构造函数const chi = new Per() // 实例对象chi.__proto__ === Per.prototype // 获取对象的原型也是就构造函数的prototype属性Per.prototype.constructor === Per // constructor属性获取当前原型关联的构造函数复制代码实例与原型读取实例属性找不到时,就会查找与对象关联的原型的属性,⼀直向上查找,这种实例与原型之间的链条关系,这就形成了原型链function Foo() {} = 'tom'const foo = new Foo() = 'Jerry'console.log(); // Jerrydelete console.log(); // tom复制代码2.原型链⾸先亮出⼤家熟悉的⽹图就是实例与构造函数,原型之间的链条关系实例的 proto 指向原型构造函数的 prototype 属性指向原型原型的 constructor 属性指向构造函数所有构造函数的 proto 指向 Function.prototypeFunction.prototype proto 指向 Object.prototypeObject.prototype proto 指向 null函数对象原型(Function.prototype)是负责造构造函数的机器,包含Object、String、Number、Boolean、Array,Function。

js使用手册

js使用手册

js使用手册JavaScript(简称JS)是一种脚本语言,用于在网页上实现交互效果和动态内容。

它是目前使用最广泛的编程语言之一,因为它可以用于开发网页应用、游戏、桌面应用等各种类型的程序。

本文将为你提供一份简明的JavaScript使用手册,介绍了JavaScript的基本语法、数据类型、函数、控制流和常见的操作等内容。

一、基本语法:1.注释:可以使用双斜杠(//)进行单行注释,或使用斜杠和星号(/*...*/)进行多行注释。

2.变量和常量:使用var关键字声明变量,使用const关键字声明常量。

JavaScript使用弱类型,所以变量可以在不同的数据类型之间进行转换。

3.数据类型:JavaScript包含了多种数据类型,包括数字、字符串、布尔值、数组、对象等。

可以使用typeof操作符来检查变量的数据类型。

4.运算符:JavaScript支持常见的算术运算符(例如+、-、*、/)和逻辑运算符(例如&&、||、!),以及比较运算符(例如==、>、<)。

5.字符串操作:可以使用+运算符来连接字符串,也可以使用字符串模板(`${...}`)来创建格式化的字符串。

二、数据类型:1.数字类型:JavaScript中的数字包括整数和浮点数。

可以进行基本的算术运算,也可以使用内置的Math对象来进行高级的数学计算。

2.字符串类型:JavaScript中的字符串以单引号('...')或双引号("...")括起来。

可以使用一系列内置的字符串方法来操作和处理字符串。

3.布尔类型:JavaScript中的布尔类型只有两个值,true和false。

可以通过逻辑运算符和比较运算符来进行布尔运算。

4.数组类型:JavaScript中的数组可以存储多个值,并根据索引进行访问。

可以使用一系列内置的数组方法来操作和处理数组。

5.对象类型:JavaScript中的对象是一种复合数据类型,可以存储键值对。

js入门基础教程

js入门基础教程

js入门基础教程JavaScript(简称JS)是一种轻量级的脚本语言,广泛应用于Web开发中。

它可以与HTML和CSS一起使用,通过在网页中嵌入js代码,使页面具有更多的交互性和动态效果。

本文将为大家介绍Javascript的入门基础知识。

1. JavaScript的历史JavaScript是在1995年由网景公司的布兰登·艾奇(BrendanEich)设计和开发的。

最初的目的是作为网页脚本语言,用来实现网页的动态效果和交互功能。

之后,它逐渐发展成一个独立的编程语言,可用于服务器端开发、桌面应用开发和移动应用开发等众多领域。

2. JavaScript的语法JavaScript的语法与Java语言类似,但它并不是Java的简化版。

它是一种解释性语言,不需要经过编译,而是由浏览器直接解释执行。

JavaScript的语法包括变量的声明、条件语句、循环语句、函数的定义等基本元素。

下面是一个简单的JavaScript程序示例:```javascript// 声明一个变量var message = "Hello, world!";// 输出变量的值console.log(message);```3. 数据类型JavaScript支持多种数据类型,包括字符串、数值、布尔值、数组、对象等。

其中,字符串用于表示文本,数值用于表示数字,布尔值用于表示真假值。

数组用于存储一组有序的值,对象用于存储键值对。

JavaScript还具有动态类型的特性,即同一个变量可以在不同的上下文中表示不同的数据类型。

4. 控制流程JavaScript中的控制流程包括条件语句和循环语句。

条件语句用于根据不同的条件执行不同的代码块,包括if语句和switch 语句。

循环语句用于重复执行一段代码,包括while循环、do-while循环和for循环。

5. 函数在JavaScript中,函数是一段可重复使用的代码块,用于实现特定的功能。

3、JavaScript运算符和表达式

3、JavaScript运算符和表达式

var box = Infinity + Infinity;
//Infinity
var box = -Infinity + -Infinity; //-Infinity
var box = Infinity + -Infinity; //NaN,正无穷和负无穷相加等NaN
var box = 100 + '100';
3.逻辑非运算符可以用于任何值。无论这个值是什么数据类型,这个运算符都会返回一个布尔值。它 的流程是:先将这个值转换成布尔值,然后取反
注: JavaScript虽说也有& 和 |,但是这里不是做逻辑运算符,而是位运算符
七、三目运算符
三目运算符,又叫三元条件运算符 三元条件运算符其实就是后面将要学到的if 语句的简写形式。 根据条件在两个语句中执行其中的一个,使用符号 ?: 语法如下: 条件表达式?语句1:语句2 参数说明: 条件表达式,结果会被作为布尔值处理 语句1:如果条件表达式返回true则执行 语句2:如果条件表达式返回false则执行
算术运算符即算术运算符号。是完成基本的算术运算 (arithmetic operators) 符号,就是 用来处理四则运算的符号。
算数运算符分为以下:
二、算术运算符
加法运算符(+)
var box = 1 + 2;
//等于3
var box = 1 + NaN;
//NaN,只要有一个NaN 就为NaN
值 true false false false true true false false false true false
五、比较运算符(关系运算符)
相等运算符 == :判断两个操作数是否相等。 不同的数据类型会自动转换为相等的数据类 型再做比较。

js基础知识点

js基础知识点

js基础知识点js基础知识点1、javascript概述JavaScript是一种弱类型,以对象为基础,定义的脚本语言,它可以给网页添加各种动态特性,JavaScript不需要编译就能运行,有丰富的内置函数和对象,可以在Web中读写数据,用于在Web中编写客户端脚本。

2、javascript应用JavaScript可以用在各种浏览器上,可以实现网页中的事件处理、表单处理、客户端检验、图形界面效果等。

通常JavaScript使用的目的是增强用户体验,提高网页的交互性和可用性3、javascript变量JavaScript变量有全局变量和局部变量。

它们的区别在于:1)全局变量在JavaScript脚本的所有部分都可以访问,而局部变量只能在声明它的函数内部访问。

2)局部变量只在函数内部有效,函数外部无法访问,而全局变量在函数内部外部都可以访问。

3)全局变量在整个网页的所有脚本都可以访问,只要这个网页被打开就可以,而局部变量只能在它声明的函数或语句块内访问。

4、javascript数据类型JavaScript支持6种数据类型:Undefined、Null、Boolean、Number、String 和Object。

Undefined 表示未定义,它的值是undefined。

Null 表示空值,它的值是null。

Boolean 表示布尔值,它的值是true或false。

Number表示数字,它的值是整数或小数String 表示字符串,它的值是由一系列字符组成的文本Object 表示对象,它的值是一组数据和功能的集合5、javascript函数JavaScript函数可以看作是一段可以重复使用的代码,它由一系列语句组成,用于完成特定的任务。

函数有四个特点:1)可以重复使用2)可以接收参数3)可以返回值4)可以封装函数的声明和调用函数可以使用function来声明:function functionName (parameters) {// code to be executed}函数使用functionName()来调用:functionName(parameters);函数默认有返回值,如果使用return语句来返回值,则忽略默认值,否则,函数返回值为undefined。

jsjl定向井水平水平井基础知识介绍解析

jsjl定向井水平水平井基础知识介绍解析

图4-7 法面扫描法 法面扫描得到的距离,是周围相关邻井到扫描井的径向距离,而方向却是反映了相对扫描井来 说:上、下、左、右的关系。
四 计算方法介绍
4.6.3 最近距离扫描法
图4-8 最近距离扫描法示意图
五 螺杆钻具
螺杆动力钻具的构造及各部分的功 能: A.旁通阀总成----是起下钻作业和 接但根时的泥浆进出的通道。在 钻进过程中旁通阀关闭。 B.马达总成----由钢制转子和固结在 外筒的橡胶定子组成。在钻井 液的推动下转子转动并带动钻头旋 转。 C.万向连轴节总成----上端连接 转子,下端连接驱动轴。其作用是 将转子的偏心运动转化为驱动轴的 同心运动。 D.轴承总成----Navi-Drill钻具有三 套轴承,两套径向轴承,一套推力 轴承。上下径向轴承起驱动轴的扶 正和稳定作用及限制钻井液的溢流 量的作用。推力轴承承受上下的轴 向载荷。 E.驱动轴总成----上端接万向连轴 节,下端接钻头。起驱动钻头转动 的作用。
二 基本计算
1.全角变化率计算公式:
cos cos1 cos 2 sin 1 sin 2 cos
2.工具造斜率计算公式:
KC 30 D
3.装置角计算公式:
cos
cos1 cos cos 2 sin 1 sin 1
4.定向方位角计算公式:
s 1 n
图4-3平衡正切法示意图
计算公式:
四 计算方法介绍
4.4 圆柱螺线法(曲率半径法)
圆柱螺线法假设两测点间的测段是一条等变螺旋角的圆柱螺线。螺线在两端点处与上下 两测点处的井眼方向相切。
图4-4 曲率半径法示意图
四 计算方法介绍
4.4 圆柱螺线法(曲率半径法)
圆柱螺线法假设两测点间的测段是一条等变螺旋角的圆柱螺线。螺线在两端点处与上下 两测点处的井眼方向相切。

jsjl定向井水平水平井基础知识介绍

jsjl定向井水平水平井基础知识介绍

图1-1 井斜角示意图
图1-2 方位角示意图
一 基本术语
6)磁偏角:磁北方位线与真北方位线并不重合,两者之间有一个夹角,这个夹角称为磁偏角。磁偏角又有东 磁偏和西磁偏角之分,当磁北方位线在正北方位线以东时,称为东偏角;当磁北方位线在正北方位线以 西时称为西偏磁偏角。• 进行磁偏角校正时按以下公式计算(图1-3): 真方位角=磁方位角+东偏磁偏角 真方位角=磁方位角-西偏磁偏角 7• )井斜变化率:是指井斜角随井深变化的快慢程度,常以Kα表示,精确的讲井斜变化率是井斜角度(α) 对井深(L• )的一阶导数。 8)井深方位变化率:实际应用中简称方位变化率,是指井斜方位角随井深变化的快慢程 度,常用KΦ表示。 9)全角变化率(狗腿严重或井眼曲率):从井眼内的一个点到另一个点,井眼前进方向变化的角度(两点处 井眼前进方向线之间的夹角),• 该角度既反映了井斜角度的变化又反映了方位角度的变化,通常称为全 角变化值。• 两点间的全角变化值γ相对与两点间井眼长度ΔL变化的快慢及为全角变化率。 10)垂深(垂直井深):即某测点的垂直深度,以H表示。• 是指井身任意一点 至转盘面所在平面的距离。 11)水平投影长度:是指自井口至测点的井眼长度在水平面上的投影长度。以 S• 表示。 12)水平位移:简称平移,是指测点到井口垂线的距离。在国外又称为闭合距 ( Closure Distance)。 13)平移方位角:又称为闭合方位角(Closure Azimuth),常用θ表示,• 是 指以正北方位线为始边顺针方向转至平移方位线上所转过的角度。 14)视平移:又称为投影位移,井身上的某点在垂直投影面上的水平位移。在 实际定向井钻井过程中,这个投影面选在设计方位线上。所以视不移也可以定 义为水平位移在设计线上的投影。 图1-3
二 基本计算

js学习总结

js学习总结

js学习总结学习JavaScript是现代编程的必备技能之一。

在Web开发中,JavaScript是一种广泛应用的脚本语言,可以为网页赋予动态和交互性。

学习JavaScript对于想要成为全栈开发者或前端工程师的人来说是至关重要的。

在我的JavaScript学习过程中,我总结了以下几点经验。

首先,学习语法和基本概念是理解JavaScript的关键。

我首先学习了JavaScript的基础语法,包括变量、数据类型、运算符和控制结构等。

从简单的示例开始,逐渐深入理解语言的特性和用法。

在学习的过程中,我发现通过实践编写代码是最好的学习方法,因为只有亲自动手去实验,我才能更好地理解和记住。

其次,掌握DOM(Document Object Model)和事件处理非常重要。

DOM是HTML文档的编程接口,可以用JavaScript来操作网页上的元素。

我学习了如何通过DOM方法选择和操作HTML元素,例如修改文本内容、改变样式或添加和删除元素等。

同时,我还学习了如何通过事件处理来实现网页的交互性。

事件处理允许在用户执行某些操作时触发相应的JavaScript代码。

这使得网页能够对用户的操作做出响应,并提供更好的用户体验。

第三,熟悉常用的JavaScript库和框架能够提升开发效率。

像jQuery这样的库提供了许多实用的功能和方法,使得JavaScript代码变得更简洁和易读。

另外,像React和Vue.js这样的前端框架提供了更高级和更复杂的功能,使得我们能够更轻松地构建现代化和响应式的网页应用程序。

第四,学习调试和错误处理是成为一名优秀JavaScript开发者的关键。

在编程过程中,出错是常有的事情,而且调试是解决问题的关键工具。

我学会了如何使用浏览器的控制台来调试代码,查看变量的值、打印调试信息或检查JavaScript的错误。

此外,我还了解了常见的错误类型和如何处理它们。

对于解决问题,要有耐心和坚持不懈的精神。

js基础语法

js基础语法

js基础语法
JavaScript是一种高级的、解释型的编程语言,它是一种脚本语言,可以用来开发Web应用、游戏、桌面应用、移动应用等等。

以下是JavaScript的基本语法:
变量:用var关键字声明一个变量,例如var num = 5;,其中num
是变量名,5是变量的值。

数据类型:JavaScript有基本数据类型(string、number、boolean、null、undefined)和复杂数据类型(object、array、function)。

控制流程:if-else语句、for循环、while循环、switch语句等用
来控制代码执行流程的语法。

函数:用function关键字定义一个函数,例如function add(num1, num2) {return num1 + num2;},其中add是函数名,num1和num2是函
数的参数,return语句用来返回函数的值。

对象:JavaScript中的对象是键值对的集合,可以通过点操作符(.)或者方括号([])来访问对象的属性和方法,例如var person = {name: 'Tom', age: 20};,可以通过或者person['name']来获取name属性的值。

数组:JavaScript中的数组是一组值的有序列表,可以通过方括号
来访问数组的元素,例如var nums = [1, 2, 3, 4];,可以通过nums[0]
来获取数组的第一个元素的值。

以上是JavaScript的基础语法,在深入学习JavaScript时,还需要
进一步了解JavaScript的面向对象编程、模块化等高级特性。

JavaScript基础知识点

JavaScript基础知识点

JavaScript基础知识点1、JavaScript概述1.1、JavaScript是什么?有什么⽤?HTML:就是⽤来写⽹页的。

⼈的⾝体CSS:就是⽤来美化页⾯的。

⼈的⾐服JavaScript:前端⼤脑、灵魂。

⼈的⼤脑、灵魂JavaScript是WEB上最强⼤的脚本语⾔。

脚本语⾔:⽆法独⽴执⾏。

必须嵌⼊到其它语⾔中,结合使⽤。

直接被浏览器解析执⾏。

Java编程语⾔:独⽴写程序、独⽴运⾏。

先编译后执⾏作⽤:控制页⾯特效展⽰。

例如:JS可以对HTML元素进⾏动态控制JS可以对表单项进⾏校验JS可以控制CSS的样式1.2、JavaScript⼊门案例1.3、JavaScript的语⾔特征及编程注意事项特征:JavaScript⽆需编译,直接被浏览器解释并执⾏JavaScript⽆法单独运⾏,必须嵌⼊到HTML代码中运⾏JavaScript的执⾏过程由上到下依次执⾏注意:JavaScript没有访问系统⽂件的权限(安全)由于JavaScript⽆需编译,是由上到下依次解释执⾏,所以在保持可读性的情况下,允许使⽤链式编程JavaScript和java没有任何直接关系1.4、JavaScript的组成JavaScript包括:ECMAScript 、 DOM 、 BOMECMAScript(核⼼):规定了JS的语法和基本对象。

DOM ⽂档对象模型:处理页⾯内容的⽅法标记型⽂档。

HTMLBOM 浏览器对象模型:与浏览器交互的⽅法和接⼝1.4.1、内部脚本在当前页⾯内部写script标签,内部即可书写JavaScript代码格式:<script type="text/javascript"> JavaScript的代码 </script>注:script标签理论上可以书写在HTML⽂件的任意位置1.4.2、外部引⼊在HTML⽂档中,通过<script src="">标签引⼊.js⽂件格式:<script type="text/javascript" src="javascript⽂件路径"></script>⽰例⼀:<script type="text/javascript" src="01demo1.js"></script>注:外部引⽤时script标签内不能有script代码,即使写了也不会执⾏。

javascript知识点

javascript知识点

javascript知识点JavaScript(简称“JS”)是一种直译式脚本语言,是一种动态类型的、弱类型的、基于原型的语言,内置支持类型。

它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML 网页增加动态功能。

JavaScript知识点包括:1、JavaScript 核心:JavaScript 是一种脚本语言,它支持面向对象的编程,也支持函数式编程,以及命令式编程等多种风格。

JavaScript 的核心包括:语法、变量、运算符、表达式、关键字、语句、注释和函数。

2、DOM(文档对象模型):DOM 将 HTML 文档分解成一系列可访问的节点,它们可以使用 JavaScript 来操作,例如添加、删除、修改和查找元素。

3、BOM(浏览器对象模型):BOM 提供了一系列的API,用于访问浏览器的特性,例如窗口、导航历史、计时器等,可以使用 JavaScript 来操作。

4、Ajax:Ajax 是一种异步的 Web 开发技术,可以使用 JavaScript 和 XMLHttpRequest 对象来访问服务器,从而实现异步数据交互和更新网页内容。

5、jQuery: jQuery 是一套前端 JavaScript 库,可以通过简单的 API 来操作 DOM,实现动画效果、事件处理、Ajax 交互等。

6、Node.js:Node.js 是一个基于 JavaScript 语言的服务端开发平台,可以使用 JavaScript 编写服务端应用程序,并且可以与浏览器端的 JavaScript 代码共享同一种 API。

7、AngularJS:AngularJS 是一个前端 JavaScript 框架,可以使用 AngularJS 快速开发 Web 应用,它拥有模块、控制器、视图、指令等概念,使得前端开发变得更加容易。

javascript术语与缩写解释

javascript术语与缩写解释

javascript术语与缩写解释JavaScript(简称JS)是一种脚本语言,常用于网页开发。

它是一种高级、动态、直译型语言,可以直接在网页上编写和运行,无需编译成机器语言。

JavaScript被广泛应用于网页的动态交互、数据验证、动画效果和移动应用等领域。

本文将为您介绍JavaScript中常见的术语和缩写,并逐步解释其含义。

1. ECMAScript(简称ES):ECMAScript是JavaScript的标准化版本。

它定义了JavaScript的语法、类型、操作符、控制语句和内置对象等内容,规定了JavaScript脚本的解析和执行过程。

2. DOM:Document Object Model(文档对象模型)是一种用于表示网页结构的API(Application Programming Interface)。

通过DOM,JavaScript可以访问和操作网页的元素、属性和样式等信息。

3. HTML:Hypertext Markup Language(超文本标记语言)是用于创建网页结构的标记语言。

JavaScript可以通过DOM访问和修改HTML元素,实现动态更新和交互效果。

4. CSS:Cascading Style Sheets(层叠样式表)用于描述网页的布局和样式。

JavaScript可以通过DOM访问和修改CSS属性,实现动态的样式变化和动画效果。

5. API:Application Programming Interface(应用程序编程接口)是一套定义软件组件之间交互方式的规范。

JavaScript使用各种API来实现与浏览器、服务器和其他应用程序的交互,如DOM API、Ajax API等。

6. AJAX:Asynchronous JavaScript and XML(异步JavaScript和XML)是一种通过JavaScript和XML进行数据交互的技术。

它可以在不刷新整个页面的情况下,通过异步请求和响应数据,实现网页的动态更新。

jsjl定向井水平水平井基础知识介绍解读

jsjl定向井水平水平井基础知识介绍解读

图4-7 法面扫描法 法面扫描得到的距离,是周围相关邻井到扫描井的径向距离,而方向却是反映了相对扫描井来 说:上、下、左、右的关系。
四 计算方法介绍
4.6.3 最近距离扫描法
图4-8 最近距离扫描法示意图
五 螺杆钻具
螺杆动力钻具的构造及各部分的功 能: A.旁通阀总成----是起下钻作业和 接但根时的泥浆进出的通道。在 钻进过程中旁通阀关闭。 B.马达总成----由钢制转子和固结在 外筒的橡胶定子组成。在钻井 液的推动下转子转动并带动钻头旋 转。 C.万向连轴节总成----上端连接 转子,下端连接驱动轴。其作用是 将转子的偏心运动转化为驱动轴的 同心运动。 D.轴承总成----Navi-Drill钻具有三 套轴承,两套径向轴承,一套推力 轴承。上下径向轴承起驱动轴的扶 正和稳定作用及限制钻井液的溢流 量的作用。推力轴承承受上下的轴 向载荷。 E.驱动轴总成----上端接万向连轴 节,下端接钻头。起驱动钻头转动 的作用。
二 基本计算
1.全角变化率计算公式:
cos cos1 cos 2 sin 1 sin 2 cos
2.工具造斜率计算公式:
KC 30 D
3.装置角计算公式:
cos
cos1 cos cos 2 sin 1 sin 1
4.定向方位角计算公式:
s 1 n
图1-1 井斜角示意图
图1-2 方位角示意图
一 基本术语
6)磁偏角:磁北方位线与真北方位线并不重合,两者之间有一个夹角,这个夹角称为磁偏角。磁偏角又有东 磁偏和西磁偏角之分,当磁北方位线在正北方位线以东时,称为东偏角;当磁北方位线在正北方位线以 西时称为西偏磁偏角。•进行磁偏角校正时按以下公式计算(图1-3): 真方位角=磁方位角+东偏磁偏角 真方位角=磁方位角-西偏磁偏角 7•)井斜变化率:是指井斜角随井深变化的快慢程度,常以Kα表示,精确的讲井斜变化率是井斜角度(α) 对井深(L•)的一阶导数。 8)井深方位变化率:实际应用中简称方位变化率,是指井斜方位角随井深变化的快慢程 度,常用KΦ表示。 9)全角变化率(狗腿严重或井眼曲率):从井眼内的一个点到另一个点,井眼前进方向变化的角度(两点处 井眼前进方向线之间的夹角),•该角度既反映了井斜角度的变化又反映了方位角度的变化,通常称为 全角变化值。•两点间的全角变化值γ相对与两点间井眼长度ΔL变化的快慢及为全角变化率。 10)垂深(垂直井深):即某测点的垂直深度,以H表示。•是指井身任意一点 至转盘面所在平面的距离。 11)水平投影长度:是指自井口至测点的井眼长度在水平面上的投影长度。以 S•表示。 12)水平位移:简称平移,是指测点到井口垂线的距离。在国外又称为闭合距 ( Closure Distance)。 13)平移方位角:又称为闭合方位角(Closure Azimuth),常用θ表示,•是 指以正北方位线为始边顺针方向转至平移方位线上所转过的角度。 14)视平移:又称为投影位移,井身上的某点在垂直投影面上的水平位移。在 实际定向井钻井过程中,这个投影面选在设计方位线上。所以视不移也可以定 义为水平位移在设计线上的投影。 图1-3

《现代JavaScript教程》内容汇总——JavaScript基础知识

《现代JavaScript教程》内容汇总——JavaScript基础知识

《现代JavaScript教程》内容汇总——JavaScript基础知识⼊职以后由于公司技术栈更多的使⽤JS,所以决定给⼀边学习JS⼀边写⼀些⼼得体会。

本⽂只会着重讲⼀些学习过程中发现的JavaScript相⽐于其它语⾔具有的特性或者优点和区别。

现代JavaScript教程的链接是,在学习过程中我也逐渐发现了JS的精妙之处。

只能说⼀门流⾏的语⾔不管先天上带着多少缺陷,带着这些历史包袱前⾏究竟有多费⼒。

都不能掩盖语⾔本⾝演化过程中所创造出的精妙思想。

JavaScript的特点JavaScript最开始是专门为浏览器设计的⼀门语⾔,但是现在也被⽤于很多其他的环境。

譬如Node.jsJavaScript 与 HTML/CSS 完全集成的,是使⽤最⼴泛的浏览器语⾔。

有很多其他的语⾔可以被“编译”成 JavaScript,这些语⾔还提供了更多的功能。

⽐如常⽤的添加了“严格的数据类型”的TypeScript,它被⼴泛应⽤于复杂系统开发"script"标签<script>标签中包裹了 JavaScript 代码,当浏览器遇到<script>标签,代码会⾃动运⾏。

脚本⽂件可以通过src特性(attribute)添加到 HTML ⽂件中,可以提供从⽹站根⽬录开始的绝对路径,当前⽬录的相对路径以及完整的URL地址。

当引⼊模块时,由于模块⽀持特殊的关键字和功能,因此我们必须通过使⽤<script type="module">特性(attribute)来告诉浏览器(只通过HTTP(s)⼯作,在本地⽂件不⾏。

)语句通常情况下换⾏意味着分号,但这不是绝对的,所以不建议省略分号。

"use strict"确保"use strict"位于最顶部,否则严格模式可能⽆法开启。

(包括脚本⽂件或者函数体)⽆法取消严格模式。

JavaScript语法基础(1)

JavaScript语法基础(1)

JavaScript语法基础(1)1、JavaScript是什么?1)定义:JavaScript「JS」是⼀种⾼级的、动态的、弱类型的、解释型的计算机编程脚本语⾔。

2)原理:3)组成:3⼤部分:◆ ECMAScript: JS的语法核⼼◆ DOM: Document Object Model;⽂档对象模型;提供访问和操作⽹页的⽅法和接⼝◆ BOM: Browser Object Model;浏览器对象模型;提供与浏览器交互的⽅法和接⼝4)总结:JS是⼀种专门为⽹页交互⽽设计的、简单⽽⼜复杂的脚本程序语⾔。

2、JS的发展简史是怎样的?●慢速的⽹络 + 表单提交 + 服务器验证 = 糟糕的体验;● 1995年,Netscape「⽹景公司」,LiveScript;●为了跟风,更名为了JavaScript;● "浏览器⼤战"时期,IE <=> Netscape Navigator;●由于语法和特性上没有标准化,不同公司的浏览器实现不⼀样,导致JS出现了⼀定程度的混乱;●欧洲计算机制造协会「ECMA」组织出现完成并定义了ECMA-262这样⼀种名为ECMAScript的脚本语⾔标准;● ECMAScript5「ES5」是最流⾏的版本;ECMAScript6「ES6」是最新的版本;●各浏览器⼚商基于ECMAScript的标准完成了对各⾃浏览器的标准更新,实现统⼀;●微软借助Windows的垄断性在"浏览器⼤战"中战胜⽹景。

3、JS的使⽤场景有哪些?1)HTML、CSS和JS三者的关系:2)JS的使⽤场景:最初的JS只⽤来⽀持⽹页表单数据的验证,如今的JS⼴泛使⽤于如下各种场景:◆⽹页/⽹游/页游;◆ Electron.js框架和V8「JS渲染引擎」,制作桌⾯程序;◆ React.js可以制作⼿机/移动端程序;◆ Node.js⽤来作为后端运⾏环境。

3)为什么JS⾮常值得我们学习?◆⽬前,全世界⼏乎所谓的⽹站都在使⽤JS;◆⼏乎所有现代的浏览器都直接原⽣⽀持JS;PC/⼿机/平板等⼏乎所有硬件设备也⽀持JS;◆作为Web⼯程师和Java⼯程师,如果想制作漂亮的⽹页;或者实现⾼效的动态验证,JS是必须的⼯具。

Javascript教程--从入门到精通【完整版】

Javascript教程--从入门到精通【完整版】

Javascript教程--从入门到精通【完整版】(作者:未知,来源:互联网整理:Alone)JavaScript教程语言概况Internet时代,造就了我们新的工作和生活方式,其互联性、开放性和共享信息的模式,打破了传统信息传播方式的重重壁垒,为我们带来了新的机遇。

随着计算机和信息时代的到来,人类社会前进的脚步在逐渐加快,每一天都有新的事情发生,每一天都在创造着奇迹。

随着Internet技术的突飞猛进,各行各业都在加入Internet的行业中来。

无论从管理方面,还是从商业角度来看,Internet都可以带来无限生机。

通过Internet,可以实现地区、集体乃至个人的连接,从而达到一种“统一的和谐”。

那么怎样把自己的或公司的信息资源加入到WWW 服务器,是广大用户日益关心的问题。

采用超链技术(超文本和超媒体技术)是实现这个目标最简单的、最快速的手段和途径。

具体实现这种手段的支持环境,那就是HTML超文本标识语言。

通过它们可制作所需的Web网页。

通过超文本(Hyper Text)和超媒体(Hyper Media)技术结合超链接(Hyper link)的链接功能将各种信息组织成网络结构(web),构成网络文档(Document),实现Internet上的“漫游”。

通过HTML符号的描述就可以实现文字、表格、声音、图像、动画等多媒体信息的检索。

然而采用这种超链技术存在有一定的缺陷,那就是它只能提供一种静态的信息资源,缺少动态的客户端与服务器端的交互。

虽然可通过CGI(Common Gateway Interface)通用网关接口实现一定的交互,但由于该方法编程较为复杂,因而在一段时间防碍了Internet技术的发展。

而JavaScript的出现,无凝为Internet网上用户带来了一线生机。

可以这样说,JavaScript的出现是时代的需求,是当今的信息时代造就了JavaScript。

JavaScript的出现,它可以使得信息和用户之间不仅只是一种显示和浏览的关系,而是实现了一种实时的、动态的、可交式的表达能力。

javascript总结及心得

javascript总结及心得

javascript总结及心得JavaScript是一种具备广泛应用的脚本语言,用于在网页中实现动态交互和用户体验的提升。

经过一段时间的学习和实践,我深刻体会到JavaScript的重要性和强大功能。

在这篇文章中,我将总结并分享自己在学习和使用JavaScript过程中的心得体会。

一、JavaScript简介JavaScript是一种脚本语言,由Netscape公司开发并在1995年首次发布。

它与HTML和CSS共同构成了Web开发的三大基石。

作为一种解释性语言,JavaScript在客户端运行,通过嵌入在HTML中的<script>标签来实现。

它具备动态性、互动性和易学易用的特点,使得它在Web开发中广泛应用。

二、JavaScript的基本语法1. 变量声明和赋值在JavaScript中,可以使用var、let或const关键字声明变量,并使用赋值操作符进行赋值。

其中,var在全局作用域范围内声明的变量具有函数作用域,而let和const声明的变量则具有块级作用域。

2. 数据类型JavaScript中的基本数据类型包括Number、String、Boolean、Undefined和Null,还有引用类型Object。

在使用变量之前,需要了解变量的数据类型,并根据需要进行类型转换。

3. 条件语句和循环结构条件语句(如if-else语句)和循环结构(如for循环)是JavaScript 中常用的控制流结构,用于根据不同条件执行不同的代码块或重复执行某段代码。

4. 函数定义与调用JavaScript中可以通过function关键字定义函数,并通过函数名调用函数。

函数可以接收参数并返回值,使得代码的重用和模块化变得更加简洁和高效。

三、JavaScript的高级特性1. 面向对象编程JavaScript是一门支持面向对象编程的语言,它通过构造函数和原型链实现对象的创建和继承。

面向对象编程的思想提升了代码可维护性和重用性。

JavaScript_1_JS基本语法

JavaScript_1_JS基本语法

第一天1:定义javascript是一种弱类型、动态类型、解释型的脚本语言。

弱类型:类型检查不严格,偏向于容忍隐式类型转换。

强类型:类型检查严格,偏向于不容忍隐式类型转换。

动态类型:运行的时候执行类型检查。

静态类型:编译的时候就知道每个变量的类型。

解释型:程序不需要编译,程序在运行的时候才翻译成机器语言,每执行一次都要翻译一次,因此效率比较低,但是跨平台性好。

编译型:程序在执行之前需要一个专门的翻译过程,把程序编译为机器语言的文件,运行时直接使用编译的结果就行了。

标记语言:标记语言的存在就是用来被读取(浏览)的,而其本身是没有行为能力的,在标记语言里你会看到<和>这些尖括号,这是用来写出“层次”和”属性”的,换句话说,它是被动的。

并不具备与访问者互动的能力。

编程语言:它是具有逻辑性和行为能力,这是主动的。

说通俗一点,它是有思想的。

脚本语言:它介于标记语言和编程语言之间,脚本语言不需要编译,可以直接用,由解释器来负责解释。

2:JS历史1:Netsape发明了javascript。

1994年,网景公司(Netscape)发布了Navigator浏览器0.9版。

这是历史上第一个比较成熟的网络浏览器,轰动一时。

但是这个版本的浏览器只能用来浏览,不具备与访问者互动的能力。

比如,网页上有一栏用户名需要填写,浏览器无法判断用户是否真的填写了,只有让服务器去判断。

如果没有填写就返回错误,要求用户重新填写。

太浪费时间和服务器资源了。

更何况在那个用调制解调器上网的年代。

2:JS之父Brendan Eich(布兰登· 艾奇)网景公司急需一种网页脚本语言,使得浏览器可以与网页互动。

当时工程师Brendan Eich就是负责开发这种新语言。

3:为什么叫JavaScript1995年Sun公司将Oak语言改名为Java,正式向市场推出。

Sun公司大肆宣传,允诺这种语言可以”一次编译,到处运行”。

很有可能成为未来市场的主宰。

javascript总结及心得

javascript总结及心得

javascript总结及心得JavaScript是一种广泛应用于网页开发的编程语言,它能够为网页增加交互性与动态效果。

通过学习与实践,我对JavaScript有了更深入的了解,并总结出以下几点心得体会。

一、了解JavaScript基础知识JavaScript的基础知识包括语法、变量、数据类型、运算符等。

熟悉这些基础知识是掌握JavaScript的关键。

例如,JavaScript的语法灵活、表达能力强,同时也具备一些与其他编程语言不同的特点,如其变量提升特性和函数作用域。

深入理解这些概念对编写优雅的JavaScript代码至关重要。

二、掌握DOM操作DOM(文档对象模型)是指一种将网页文档表示为对象的方式。

通过JavaScript,我们可以使用DOM操作网页元素,实现动态改变和交互。

掌握DOM操作意味着能够轻松操作页面上的元素,比如修改文本内容、添加样式、创建新元素等。

此外,事件处理也是DOM操作的重要组成部分,可以为网页添加各种交互响应。

三、熟悉AJAX与JSONAJAX(异步JavaScript和XML)与JSON(JavaScript对象表示法)是Web开发中常用的技术。

AJAX通过局部更新页面,实现异步加载和实时更新数据,提升用户体验。

JSON是一种轻量级的数据交换格式,易于读写和解析。

了解AJAX与JSON的使用方法,可以在网页开发中更高效地从服务器获取数据,并实现实时数据更新与展示。

四、优化性能与调试技巧在编写复杂的JavaScript代码时,优化性能非常关键。

通过减少不必要的计算、避免频繁的DOM访问以及合理使用缓存等方法,可以提高JavaScript代码的运行效率。

此外,在调试JavaScript代码时,可以利用浏览器的开发者工具,例如Chrome浏览器的控制台,通过打印变量值、执行代码片段等来快速定位问题并进行修复。

五、积极参与社区与实践JavaScript是一个非常活跃的开源社区,拥有许多优秀的开源库和框架。

javascript基本语法

javascript基本语法

javascript基本语法JavaScript(简称JS)是一种轻便的脚本语言,是一种基于原型、函数先行的语言,是一种广泛引用的客户端脚本语言。

由于JS支持语句嵌套,允许在一个语句中包含多个语句,可以用来编写复杂的程序,从而使程序的执行变得更加高效。

1. JavaScript的声明JavaScript的声明可以使用一个“<script>”标签。

在<script>标签中,可以使用type属性指定所使用的脚本语言,当type属性被设置为“application/javascript”时,即表明该文件包含的是JavaScript的源代码。

2. JavaScript的基本类型JavaScript主要有6种类型,其中包括:McNumber(表示数值类型,可以表示整数和小数)、McString(表示字符串类型)、McBoolean(表示逻辑类型)、McNull(表示null类型)、McUndefined(表示未定义的类型)和McObject(表示对象的类型)。

3. JavaScript的变量JavaScript中的变量实际上是一种可以用来储存信息的容器,变量中可以储存数据、函数和对象等内容。

在定义变量时,必须指定变量名;同时,变量名必须以字母或下划线开头,后跟除运算符(如=)与空格之外的其他字符。

4. JavaScript的注释在JavaScript中,可以使用两种类型的注释:单行注释和多行注释。

单行注释只能占一行,而多行注释可以在一行之内添加多行注释,其中每行注释以“//”开头。

5. JavaScript的标识符JavaScript的标识符用于定义变量、函数、函数参数等,其规则也是要求格式严格的。

JavaScript的标识符必须以英文字母、下划线或美元符号开头,不能以数字开头,中间可以包含字母、数字、下划线及美元符号等字符,长度不能超过32个字符。

6. JavaScript的流程控制JavaScript对于流程控制的语句以及控制结构有很多,其中常用的有if-else语句、switch...case语句、while循环、do...while循环、for循环以及break和continue等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JavaScript基础术语和概念总结一、什么是JavaScript ?JavaScript 是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。

使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java 小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。

它的出现使得信息和用户之间不仅只是一种显示和浏览的关系,而是实现了一种实时的、动态的、可交式的表达能力。

二、JavaScript的特点JavaScript 是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言,主要用于创建具有交互性较强的动态页面。

其具有以下特点:1)基于对象:JavaScript 是基于对象的脚本编程语言,能通过DOM(文档结构模型)及自身提供的对象及操作方法来实现所需的功能。

2)事件驱动:JavaScript 采用事件驱动方式,能响应键盘事件、鼠标事件及浏览器窗口事件等,并执行指定的操作。

3)解释性语言:JavaScript 是一种解释性脚本语言,无需专门编译器编译,而是在嵌入JavaScript 脚本的HTML 文档载入时被浏览器逐行地解释,大量节省客户端与服务器端进行数据交互的时间。

4)实时性:JavaScript 事件处理是实时的,无须经服务器就可以直接对客户端的事件做出响应,并用处理结果实时更新目标页面。

5)动态性:JavaScript 提供简单高效的语言流程,灵活处理对象的各种方法和属性,同时及时响应文档页面事件,实现页面的交互性和动态性。

6)跨平台:JavaScript 脚本的正确运行依赖于浏览器,而与具体的操作系统无关。

只要客户端装有支持JavaScript 脚本的浏览器,JavaScript 脚本运行结果就能正确反映在客户端浏览器平台上。

7)开发使用简单:JavaScript 基本结构类似C 语言,采用小程序段的方式编程,并提供了简易的开发平台和便捷的开发流程,就可以嵌入到HTML 文档中供浏览器解释执行。

同时JavaScript 的变量类型是弱类型,使用不严格。

8)相对安全性:JavaScript 是客户端脚本,通过浏览器解释执行。

它不允许访问本地的硬盘,并且不能将数据存入到服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互,从而有效地防止数据的丢失。

三、JavaScript和Java的区别虽然JavaScript和Java有着紧密的关系,但是确实由两家不同的公司开发的不同的两个不同产品。

Java是 SUN公司推出的新一代面向对象的程序设计语言,特别适合于Internet应用程序开发;而JavaScript是Netscape 公司的产品,其目的是为了扩展Netscape Navigator 功能,而开发的一种可以嵌入Web页面中的基于对象和事件驱动的解释性语言,它的前身是Live Script;而Java 的前身是Oak 语言。

其异同点主要是以下几个方面:1)基于对象和面向对象:Java是一种真正的面向对象的语言,即使是开发简单的程序,必须设计对象。

而JavaScript是脚本语言,它是一种基于对象和事件驱动的编程语言。

2)代码格式的不同:Java是一种与HTML无关的格式,其代码以字节代码的形式保存在独立的文档中。

JavaScript 的代码是一种文本字符格式,可以直接嵌入 HTML 文档中,并且可动态装载。

编写 HTML 文档就像编辑文本文件一样方便。

四、JavaScript的基本数据类型在JavaScript中的四种基本数据类型:数值(整数和实数)、字符串型(用“”或者‘’括起来的字符或者数值)、布尔型(true或false表示)和空值。

在JavaScript中基本数据类型可以是常量,也可以是变量。

举例:1)字符串类型:---转义序列:\b 回退\f 换页\n 换行\r 回车符\t 制表符\’单引号\”双引号\\ 反斜杠2)数字类型:浮点数:12.568,整数:2563)布尔值类型:Boolean:true,false4)空值(Null):代表变量什么也不是5)未定义值(Undefined):var a//变量a 这时的状态五、JavaScript的变量变量名必须以字母或下划线开始,其他部分可以使用数字、字母、美元符和下划线构成。

JavaScript变量名区分大小写,可使用骆驼命名法:变量名以一个小写字母开始,后面的单词首字母大写且没有空格。

变量名声明以关键字var开始。

六、HTML中如何使用JavaScript?JavaScript的使用分为两种方式,一种是直接使用,另一种就是通过事件机制使用直接使用HTML中的javascript代码块会让浏览器的控制程序交给相应的javascript解释器去完成,如果是自定义的函数,javascript是不会将其执行的,除非我们在javascript代码块中直接调用了该函数,如:“直接存在”代码中的Say()函数一样,处理函数外,其他的凡在javascript代码块中存在的javascript语句,都会被直接解释并执行。

间接使用针对javascript中的函数(自定义和系统自带)说的,通过javascript的事件机制实现,其事件的具体体现就是HTML为响应这个功能而在标签中添加的一些属性,其描述的是发生在html元素上的某些行为。

具体事件如下图所示:七、JavaScript的运行机制JavaScript是一种描述性的脚本语言,它与Java或者C#等编译性语言不同之处在于它不需要进行编译成中间语言,而是由浏览器进行动态地解析与执行。

如果不了解JavaScript的运行的机制或者不能掌握JavaScript的执行顺序,那么你就不能很好的驾驭它。

那么JavaScript是怎么运行的呐?首先,我们先来了解几个重要的术语:1、代码块JavaScript中的代码块是指<script>标签分割的代码片段。

例如:Js就是按照代码块来进行编译和执行的,注意:代码块之间是相互独立的,但是变量和方法是共享的。

我们运行后会发现这种情况:上面的代码中代码块一中运行报错,但不影响代码块二的执行,这就是代码块间的独立性,而代码块二中能调用到代码一中的变量,则是块间共享性。

2、声明函数与赋值式函数Js中的函数定义有2种:声明式函数与赋值式函数声明式函数与赋值式函数的区别在于:在JS的预编译期,声明式函数将会先被提取出来,然后才按顺序执行js代码。

如果Fn()放在fn()之后的话,则会出现函数未定义错误。

3、预编译期与执行期Js的解析过程分为两个阶段:预编译期(预处理)与执行期。

预编译期JS会对本代码块中的所有声明的变量和函数进行处理(类似与C语言的编译),但需要注意的是此时处理函数的只是声明式函数,而且变量也只是进行了声明但未进行初始化以及赋值。

举例说明:<script type="text/javascript">Fn(); //执行结果:"执行了函数2",同名函数后者会覆盖前者function Fn(){ //函数1alert("执行了函数1");}function Fn(){ //函数2alert("执行了函数2");}</script><script type="text/javascript">Fn(); //执行结果:"执行了声明式函数",在预编译期声明函数及被处理了,所以即使Fn()调用函数放在声明函数前也能执行。

function Fn(){ //声明式函数alert("执行了声明式函数");}var Fn = function(){ //赋值式函数alert("执行了赋值式函数");}</script>看完上面几个术语后,相信大家对js的运行机制又有了新的认识,现在我们看个例子:<script type="text/javascript">Fn(); //浏览器报错:"undefined"</script><script type="text/javascript">function Fn(){ //函数1alert("执行了函数1");}</script>我们上面说了JS是按照代码块来顺序执行的,其实完整的说应该是按照代码块的预处理和执行的,也就是说预处理的只是执行到的代码块的声明函数和变量,而对于还未加载的代码块是没法进行预处理的,这就是边编译边处理的核心所在。

小结:js的处理机制step 1. 读入第一个代码块。

step 2. 做语法分析,有错则报语法错误(比如括号不匹配等),并跳转到step5。

step 3. 对var变量和function定义做“预编译处理”(永远不会报错的,因为只解析正确的声明)。

step 4. 执行代码段,有错则报错(比如变量未定义)。

step 5. 如果还有下一个代码段,则读入下一个代码段,重复step2。

step6. 结束。

相关文档
最新文档