当前位置: 首页 > news >正文

javascript select2.js 动态添加_初识JavaScript

9a4d2f5d69db79907ae2692cac1615a7.png

一、什么是JavaScript

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。

JavaScript的标准是ECMAScript 。截至 2012 年,所有浏览器都完整的支持ECMAScript 5.1,旧版本的浏览器至少支持ECMAScript 3 标准。2015年6月17日,ECMA国际组织发布了ECMAScript的第六版,该版本正式名称为ECMAScript 2015,但通常被称为ECMAScript 6 或者ES6。

二、JavaScript的特点

JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。

1、是一种解释性脚本语言(代码不进行预编译)。

2、主要用来向HTML页面添加交互行为。

3、可以直接嵌入HTML页面,也可写成单独的js文件

4、跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如 Windows、Linux、Mac、Android、iOS等)。

5、Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。

三、JavaScript的用途

1、JavaScript 可以将动态的文本放入 HTML 页面

类似于这样的一段 JavaScript 声明可以将一段可变的文本放入 HTML 页面:document.write("<h1>" + name + "</h1>");

2、JavaScript 可以对事件作出响应

可以将 JavaScript 设置为当某事件发生时才会被执行,例如页面载入完成或者当用户点击某个 HTML 元素时。

3、JavaScript 可以读写 HTML 元素

JavaScript 可以读取及改变 HTML 元素的内容。

4、JavaScript 可被用来验证数据

在数据被提交到服务器之前,JavaScript 可被用来验证这些数据。

5、JavaScript 可被用来检测访问者的浏览器

JavaScript 可被用来检测访问者的浏览器,并根据所检测到的浏览器,为这个浏览器载入相应的页面。

6、JavaScript 可被用来操作cookies

JavaScript 可被用来存储和取回位于访问者的计算机中的信息。

四、第一个JS程序

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript">
            //document.write表示向文档中写入一段内容
            document.write("Hello World!");      
        </script>
    </head>
    <body>
    </body>
</html>

运行效果如下:

0f2cf5799c02d608ac0d2fc39cd7f320.png

五、JS代码规范

1、JavaScript脚本程序在HTML文件中执行;

2、JavaScript程序要写在<script></script>标签块内部;

3、JavaScript区分大小写;

4、每行写一条语句;

5、文本内容要放到英文双引号里头;

6、语句末尾需要加分号,表示这一行语句(代码)的结束;

六、js的三种引用方式

js的三种引用方式非常类似于CSS的三种使用方式:行内JS、内部JS、外部JS。

1、行内JS

在页面上放置一个超链接,一个按钮,当点击任意一个html元素时,弹窗显示 Hello world。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <a href="javascript:alert('Hello World!')">
            弹出窗口
        </a>

        <input type="button" value="弹出窗口" onclick="alert('hello world!')" />
    </body>
</html>

2、内部JS(推荐写在Body的底部)

在页面上放置一个按钮,当点击任意按钮时,弹窗显示 Hello world。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
   </head>
    <body>
        <!-- onclick="btn_Click()"给按钮添加点击事件 -->
        <input type="button" value="弹出窗口" onclick="btn_Click()" />
            
        <script type="text/javascript">
            //定义按钮点击事件
            function btn_Click(){
                //弹出提示框
                alert("hello world!");
            }
</script>
    </body>
</html>

3、外部JS

我们也可以在外部定义JS文件,然后在HTML中使用<script>标签将JS文件引入HTML页面中。

创建test.js文件:

e89cd38dee8d88a70787a91852f1ae8a.png

将test.js文件引入HTML页面:

<!DOCTYPE html>

<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <!-- 引入外部JS文件 -->
        <script type="text/javascript" src="js/test.js" ></script>
    </head>
    <body>
        <input type="button" value="弹出窗口" onclick="btn_Click()" />
    </body>
</html>

更多文章请关注微信公众号:IT鸡窝

相关文章:

  • wss无法连接 ws可以_WSS双金属温度计
  • maven 依赖jar包只有lastupdated文件_MAVEN的常见bug:
  • redis stream java消息队列_你会用redis来实现具有ack机制的消息队列吗?
  • find 命令_Find命令25个实例,你想要的都在这里了
  • vba子过程或函数未定义_“子过程或函数未定义”解决方案详解
  • ae灯光插件_国外TOP10,AE最受欢迎10大插件榜单!
  • 下拉菜单实现树状结构_motifStack | 绘制motif序列结构图
  • python画spc控制图_SPC系列8:如何选择计数型数据的SPC控制图?
  • bean的作用域_除了Bean名称和类名,还有哪些Bean元信息值得关注?
  • imresize函数matlab_如何写出三体的MATLAB程序-代码篇
  • python决策树算法_决策树算法(python)
  • cas无法使用_并发编程中cas的这三大问题你知道吗?
  • python写微信小程序商城_Python(Django 2.x)+Vue+Uniapp微信小程序商城开发视频教程
  • python中如何将两个列表进行合并_Python中如何把两个list合并,并按从小到大顺序排列?...
  • ctf xss利用_从xss挑战之旅来重读xss(一)
  • 【跃迁之路】【641天】程序员高效学习方法论探索系列(实验阶段398-2018.11.14)...
  • Computed property XXX was assigned to but it has no setter
  • LeetCode算法系列_0891_子序列宽度之和
  • maven工程打包jar以及java jar命令的classpath使用
  • Python爬虫--- 1.3 BS4库的解析器
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • ViewService——一种保证客户端与服务端同步的方法
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 高度不固定时垂直居中
  • 开源地图数据可视化库——mapnik
  • 理清楚Vue的结构
  • 力扣(LeetCode)22
  • 事件委托的小应用
  • 一些关于Rust在2019年的思考
  • elasticsearch-head插件安装
  • hi-nginx-1.3.4编译安装
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • 湖北分布式智能数据采集方法有哪些?
  • 如何用纯 CSS 创作一个货车 loader
  • 数据库巡检项
  • ###STL(标准模板库)
  • #Linux(make工具和makefile文件以及makefile语法)
  • (6)STL算法之转换
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (附源码)计算机毕业设计SSM智慧停车系统
  • (四)TensorRT | 基于 GPU 端的 Python 推理
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler
  • .Net Memory Profiler的使用举例
  • .NET 将多个程序集合并成单一程序集的 4+3 种方法
  • .NET 命令行参数包含应用程序路径吗?
  • .NET与 java通用的3DES加密解密方法
  • @Bean, @Component, @Configuration简析
  • @JoinTable会自动删除关联表的数据
  • @Repository 注解
  • [ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解