JavaScript 相关知识

本文介绍了JavaScript的基础概念,包括其历史背景、基本语法、数据类型及转换、流程控制等内容,并详细讲解了如何通过JavaScript来操作HTML元素,实现网页动态效果。
  • 基础概念

编程:就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并得到最终结果的过程。

计算机程序:就是计算机所执行的一系列的指令的集合。

计算机语言分为:

  1. 机器语言;
  2. 汇编语言;
  3. 高级语言。

翻译器:高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,因此需要一个翻译器。它可以将我们所编写的源代码转换为机器语言,也叫二进制化。

编程语言和标记语言的区别:编程语言有很强的逻辑和行为能力。可以看到很多if,while语句。标记语言是不断地向计算机发出指令,常用语格式化和链接,标记语言是用来被读取的,是被动的。

JavaScript:一种轻量级语言。JavaScript是世界上最流行的语言之一,是一种运行在客户端的脚本语言,可用于HTML和web。是web的编程语言。

Javascript是web开发人员必须学的三门语言之一:

  1.                  HTML定义了网页的行为
  2.                  CSS描述了网页的布局
  3.                  Javascript描述网页的行为
  • Javascript简介

1.直接输入HTML输出流

2.对事件的反应

3.JavaScript能改变HTML内容

4.改变HTML图像

5.改变HTML样式

6.验证输入

7.JavaScript 与 Java 是两种完全不同的语言,无论在概念上还是设计上。

   Java(由 Sun 发明)是更复杂的编程语言。

   ECMA-262 是 JavaScript 标准的官方名称。

   JavaScript 由 Brendan Eich 发明。它于 1995 年出现在 Netscape 中(该浏览器已停止更新),并于 1997 年被 ECMA(一个标准协会)采纳。

  • JavaScript功能

  1. 表单动态校验(密码强度检测)
  2. 网页特效
  3. 服务端开发
  4. 桌面程序
  5. APP(Cordova)
  6. 控制硬件-物联网(Ruff)
  7. 游戏开发(cocos2d-js)

浏览器执行JS简介:

浏览器分成两部分:

渲染引擎:用来解释HTML与CSS,俗称内核,比如Chrome的blink,老版本的webkit。

JS引擎:也叫JS解释器。用来读取网页中的的JavaScript代码,对其处理后运行,比如Chrome的V8。

  • JavaScript用法

HTML中的脚本必须位于<script>标签中。可放在<body>和<head>部分中。

  • JavaScript输出

显示数据:使用window.alert()弹出警告框;

                  使用documnet.write()方法将内容写到HTML文档中;

                  使用innerHTML写入到HTML元素中;

                  使用console.log()写入到浏览器的控制台。

  • JS组成

1.ECMAScript

是由ECMA国际进行标准化的一门编程语言,往往被称为JavaScript(网景公司)或JScript(微软公司),实际上这大都是ECMAscript语言的实现和扩展。规定了JS的编程语法和基础核心知识。

2.DOM型(Document Object Model)——文档对象模型

w3c组织推荐的处理可扩展标记语言的标记编程接口。

3.BOM型(Browser Object Model)——浏览器对象模型

提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。可以做一些操作比如弹出框、控制浏览器跳转、获取分辨率等。

  • JS初体验

1.JS有三种书写位置,分别为行内内嵌外部。

2.注释

    单行注释       //文字

    多行注释       /*文字*/

3.变量

     本质:变量是程序在内存中申请的一块用来存储数据的空间。

     使用:1.声明变量  2.赋值

                声明一个变量并赋值称为变量的初始化。

     声明变量和不声明变量之间的区别

            1.在函数外,用var声明的变量为全局变量,不用var声明的变量是全局变量

            2.在函数中,用把人声明的变量为局部变量,不用var声明的变量为全局变量

            3.用var声明的变量默认带不可删除属性,不用var声明的变量默认带可删除变量属性。

     命名规范

  1.             由字母、数字、下划线,美元符号组成;
  2.             严格区分大小写;
  3.             不能以数字开头;
  4.             不能是关键字;
  5.             变量名必须有意义;
  6.             遵守驼峰命名法,首字母小写,后面单词首字母需要大写;

4.数据类型

            1.数字型(八进制前加0,十六进制前加0X)

              三个特殊值:lnfinity(表示无穷大,大于任何数值)

                                   -lnfinity(表示无穷小,小于任何数值)

                                   NaN,Not a number(代表任何数值)

            2.布尔型 true或false

            3.字符型

                       字符串拼接 可用加号。

            4.undefined

            5.null

            6.symbol

       获取变量数据类型

             1.typeof可用来获取数据类型

             2.字面量:是源代码中一个固定值的表示法

      数据类型转换

              1.转换为字符串:toString(), String()强制转换,加号拼接字符串。

              2.转换为数字型:parseint(string)函数,parseFloat(string)函数,Number()强制转换函数,js隐式转换。

              3.转换为布尔型:Boolean()函数。

  • 运算符         

1.算术运算符:+,-,*,/,%

              浮点数值的最高精度是17位小数

2.递增递减运算符:++,--

           i++ :先原值运算,后自加

           ++i :先自加,后赋值运算

            i-- : 先原值运算,后自减

            --i :先自减,后赋值运算

3.比较运算符:<,>,>=,<=,==,!=,=== !==

4.逻辑运算符:&&,||,!

5.赋值运算符:=,+=,-=,*=,/=,%=

  • 流程控制

流程控制主要有三种结构:顺序结构,分支结构和循环结构。

if语句,while语句,for循环,continue语句,break语句

  • JS数组函数

1.数组:一组数据的集合,每个数据都被称为元素,在数组中可以存放任意类型的元素。

2.创建数组:利用new创建数组;利用数组字面量创建数组。

3.数组的索引:用来访问数组元素的序号(下标从0开始)。

4.遍历数组:就是把数组中的每个元素从头到尾访问一次。

 使用“数组名.length”可以访问数组元素的长度。

5.形参:不用声明的变量。

形参和实参个数不匹配问题:

    形参个数等于实参,输出正确结果;

    实参个数多于形参个数,只取到形参个数;

    实参个数小于形参个数,多的形参定义为undefined,结果为null。

  • 函数的返回值

1.函数都是有返回值的,如果有return则返回return后面的值;如果没有则返回undefined。

2.break,continue,return的区别

 break :结束当前循环体。

 continue:跳出本次循环,执行下次循环。

return:退出循环,返回return值,结束当前的循环体内的代码。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

六自由度机械臂ANN人工神经网络设计:正向逆向运动学求解、正向动力学控制、拉格朗日-欧拉法推导逆向动力学方程(Matlab代码实现)内容概要:本文档围绕六自由度机械臂的ANN人工神经网络设计展开,详细介绍了正向与逆向运动学求解、正向动力学控制以及基于拉格朗日-欧拉法推导逆向动力学方程的理论与Matlab代码实现过程。文档还涵盖了PINN物理信息神经网络在微分方程求解、主动噪声控制、天线分析、电动汽车调度、储能优化等多个工程与科研领域的应用案例,并提供了丰富的Matlab/Simulink仿真资源和技术支持方向,体现了其在多学科交叉仿真与优化中的综合性价值。; 适合人群:具备一定Matlab编程基础,从事机器人控制、自动化、智能制造、电力系统或相关工程领域研究的科研人员、研究生及工程师。; 使用场景及目标:①掌握六自由度机械臂的运动学与动力学建模方法;②学习人工神经网络在复杂非线性系统控制中的应用;③借助Matlab实现动力学方程推导与仿真验证;④拓展至路径规划、优化调度、信号处理等相关课题的研究与复现。; 阅读建议:建议按目录顺序系统学习,重点关注机械臂建模与神经网络控制部分的代码实现,结合提供的网盘资源进行实践操作,并参考文中列举的优化算法与仿真方法拓展自身研究思路。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值