热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JavaScript01JavaScript是什么

1.1JavaScript是什么JavaScript是一门世界上最流行的脚本语言(基本所有平台的所有软件都会用到它)。“1994年,网景公

1.1 Javascript 是什么




  1. Javascript 是一门世界上最流行的脚本语言(基本所有平台的所有软件都会用到它)。

“1994年,网景公司(Netscape)发布了Navigator浏览器0.9版。这是历史上第一个比较成熟的网络浏览器,轰动一时。但是,这个版本的浏览器只能用来浏览,不具备与访问者互动的能力。…网景公司急需一种网页脚本语言,使得浏览器可以与网页互动。”


在这里插入图片描述
在这里插入图片描述
2. 总之,当时的形势就是,网景公司的整个管理层,都是Java语言的信徒,Sun公司完全介入网页脚本语言的决策。 因此,Javascript后来就是网景和Sun两家公司一起携手推向市场的,这种语言被命名为"Java+script"并不是偶然的。


  1. 此时,34岁的系统程序员Brendan Eich登场了。1995年4月,网景公司录用了他。
    Brendan Eich的主要方向和兴趣是函数式编程,网景公司招聘他的目的,是研究将Scheme语言作为网页脚本语言的可能性。Brendan Eich本人也是这样想的,以为进入新公司后,会主要与Scheme语言打交道。
    在这里插入图片描述

  2. 仅仅一个月之后,1995年5月,网景公司做出决策,未来的网页脚本语言必须"看上去与Java足够相似",但是比Java简单,使得非专业的网页作者也能很快上手。 这个决策实际上将Perl、Python. Tcl、scheme等非面向对象编程的语言都排除在外了。
    Brendan Eich被指定为这种"简化版Java语言"的设计师。

  3. 但是,他对Java一点兴趣也没有。为了应付公司安排的任务,他只用1o天时间就把Javascript设计出来了。
    由于设计时间太短,语言的一些细节考虑得不够严谨,导致后来很长一段时间,Javascript写出来的程序混乱不堪。如果Brendan Eich预见到,未来这种语言会成为互联网第一大语言,全世界有几百万学习者,他会不会多花一点时间呢?
    总的来说,他的设计思路是这样的:


(1) 借鉴C语言的基本语法;.
(2)借鉴Java语言的数据类型和内存管理;
(3)借鉴Scheme语言,将函数提升到"第一等公民”(firstclass)的地位;
(4)借鉴Self语言,使用基于原型(prototype)的继承机制。
一个合格的后端程序员,必须要精通 Javascript!因为你会发现你写 Javascript 的时间 要比 写 Java 要多。并且 分析 JS 也比分析其它东西的时间要多。


ECMAscript 是Javascript 的一个标准。最新版本 已经到 ES6 版本。&#xff08;但大部分浏览器还只停留在 支持 ES5 的这个版本。&#xff09;这就导致了&#xff0c;开发环境 <-\-> 线上环境&#xff0c;版本不一致。程序员可能用 ES6 写的&#xff0c;但是运行不出来。




1.2 快速入门

引入 Javascript 要不就用 引入外部js文件。

要不就直接 写在 html 文件 的内部。


<html lang&#61;"en">
<head><meta charset&#61;"UTF-8"><title>Titletitle><script>//用 script 标签 写 Javascriptalert("hello world");script>
head>
<body>

body>
html>

在这里插入图片描述

alert("hello world");


<html lang&#61;"en">
<head><meta charset&#61;"UTF-8"><title>Titletitle>



<script src&#61;"js/qj.js">script>
head>
<body>
body>
html>



1.3 基本语法


  1. 定义变量
    var 变量名 &#61; 变量值

var 是 Javascript 里面 唯一的 变量类型&#xff0c;它的意思是 指你声明了一个变量。但是 不需要 指定 数据类型&#xff0c;因为 Javascript 会帮你 自动识别。


  1. 流程控制
    Javascript 所有的流程控制语句和 C/C&#43;&#43;、Java 是一样的一样的&#xff01;

  2. 输出语句
    console.log(输出的东西);//在浏览器控制台里面显示
    alert(输出的东西);

console.log() 控制台日志&#xff0c;这个浏览器的控制台是非常有用的&#xff01;它会 帮你 检查 Javascript 的错误&#xff0c;还能帮你 输出信息到控制台里。

在这里插入图片描述
在这里插入图片描述
4. 断点 debug

在浏览器 检查工具里&#xff0c;有一个 Sources&#xff0c;点击进去后。你就会看到 你的 工程、文件夹、文件。在这里插入图片描述
然后里边 的 数字编号&#xff0c;是可以 点击的。点击之后 就下断点了。再次刷新 网页的时候&#xff0c;它就会 执行到 断点的位置&#xff01;&#xff01;&#xff01;

在这里插入图片描述
然后 下一步调试 和 上一步调试 也都是有的。
在这里插入图片描述
这个调试 的话&#xff0c;也是和 IDEA 一样的&#xff0c;差不太多。


  • Elements&#xff08;元素&#xff09;&#xff1a;查看修改 html 和 CSS

  • Console&#xff08;控制台&#xff09;&#xff1a;调试 JS&#xff0c;输出信息

  • Source&#xff08;源码&#xff09;&#xff1a;查看 JS 和 调试 JS

  • NetWork&#xff08;网络&#xff09;&#xff1a;抓包&#xff0c;网络爬虫

  • Application&#xff08;应用&#xff09;&#xff1a;查看 COOKIEs


在这里插入图片描述


推荐阅读
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • PHPMailer邮件类邮件发送功能的使用教学及注意事项
    本文介绍了使用国外开源码PHPMailer邮件类实现邮件发送功能的简单教学,同时提供了一些注意事项。文章涵盖了字符集设置、发送HTML格式邮件、群发邮件以及避免类的重定义等方面的内容。此外,还提供了一些与PHP相关的资源和服务,如传奇手游游戏源码下载、vscode字体调整、数据恢复、Ubuntu实验环境搭建、北京爬虫市场、进阶PHP和SEO人员需注意的内容。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文介绍了解决IE678伪类不兼容问题的方法,包括少用CSS3和HTML5独有的属性,使用CSS hacker,使用last-child清除浮动、批量添加标签、去掉list item最后一个的border-right等技巧。同时还介绍了使用after清除浮动时加上IE独有属性zoom:1的处理方法。另外,本文还提到可以使用jQuery代替批量添加标签的功能,以及使用负边距和CSS2选择器element+element去掉list item最后一个的border-right的方法。 ... [详细]
  • 基于dlib的人脸68特征点提取(眨眼张嘴检测)python版本
    文章目录引言开发环境和库流程设计张嘴和闭眼的检测引言(1)利用Dlib官方训练好的模型“shape_predictor_68_face_landmarks.dat”进行68个点标定 ... [详细]
  • Python爬虫中使用正则表达式的方法和注意事项
    本文介绍了在Python爬虫中使用正则表达式的方法和注意事项。首先解释了爬虫的四个主要步骤,并强调了正则表达式在数据处理中的重要性。然后详细介绍了正则表达式的概念和用法,包括检索、替换和过滤文本的功能。同时提到了re模块是Python内置的用于处理正则表达式的模块,并给出了使用正则表达式时需要注意的特殊字符转义和原始字符串的用法。通过本文的学习,读者可以掌握在Python爬虫中使用正则表达式的技巧和方法。 ... [详细]
  • 延迟注入工具(python)的SQL脚本
    本文介绍了一个延迟注入工具(python)的SQL脚本,包括使用urllib2、time、socket、threading、requests等模块实现延迟注入的方法。该工具可以通过构造特定的URL来进行注入测试,并通过延迟时间来判断注入是否成功。 ... [详细]
  • 移动端常用单位——rem的使用方法和注意事项
    本文介绍了移动端常用的单位rem的使用方法和注意事项,包括px、%、em、vw、vh等其他常用单位的比较。同时还介绍了如何通过JS获取视口宽度并动态调整rem的值,以适应不同设备的屏幕大小。此外,还提到了rem目前在移动端的主流地位。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 本文介绍了使用Python解析C语言结构体的方法,包括定义基本类型和结构体类型的字典,并提供了一个示例代码,展示了如何解析C语言结构体。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 本文介绍了一种在PHP中对二维数组根据某个字段进行排序的方法,以年龄字段为例,按照倒序的方式进行排序,并给出了具体的代码实现。 ... [详细]
  • 本文介绍了使用Python编写购物程序的实现步骤和代码示例。程序启动后,用户需要输入工资,并打印商品列表。用户可以根据商品编号选择购买商品,程序会检测余额是否充足,如果充足则直接扣款,否则提醒用户。用户可以随时退出程序,在退出时打印已购买商品的数量和余额。附带了完整的代码示例。 ... [详细]
author-avatar
汉臣Y
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有