JavaScript入门初体验书写方式

目录
  • javascript历史
  • javascript是什么?
  • javascript的作用
  • 浏览器执行js简介
  • javascript的组成
    • ECMAScript
  • javascript初体验
    • 行内式
    • 内嵌JS
    • 外部JS文件
  • 结语

javascript历史

  • 布兰登艾奇( Brendan Eich ,1961年~)。
  • 神奇的大哥在1995年利用10天完成 JavaScript 设计。
  • 网景公司最初命名为 LiveScript ,后来在与 Sun 合作之后将其改名为 JavaScript 。(很大部分也是为了蹭Java的热度)

javascript是什么?

  • JavaScript 是世界上最流行的语言之,是一种运行在客户端的脚本语言( Script 是脚本的意思)。
  • 脚本语言:不需要编译,运行过程中由 js 解释器( js 引擎)逐行来进行解释并执行。
  • 现在也可以基于 Node.js 技术进行服务器端编程。

javascript的作用

  • 表单动态校验(密码强度检测)( JS 产生最初的目的)
  • 网页特效。
  • 服务端开发( Node.js )。
  • 桌面程序( Electron )(像你们用的vscode就是基于js开发的)。
  • App ( Cordova )。
  • 控制硬件﹣物联网( Ruff )。
  • 游戏开发(cocos2d-js)。

浏览器执行js简介

浏览器分成两部分:渲染引擎和 JS 引擎。

  • 渲染引擎:用来解析 HTML 与 CSS ,俗称内核,比如 chrome 浏览器的 blink ,老版本的 webkit。
  • JS 引擎:也称为 JS 解释器。用来读取网页中的 JavaScript 代码,对其处理后运行,比如 chrome 浏览器的V8。

注:浏览器本身并不会执行 JS 代码,而是通过内置 JavaScript 引擎(解释器)来执行 JS 代码。 JS 引擎执行代码时逐行解释每一句源码(转换为机器语言),然后由计算机去执行,所以 JavaScript 语言归为脚本语言,会逐行解释执行。

javascript的组成

ECMAScript

ECMAScript 是由 ECMA 国际(原欧洲计算机制造商协会)进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往被称为 JavaScript 或 JScript ,但实际上后两者是 ECMAScript 语言的实现和扩展。

注: ECMAScript 规定了 JS 的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套 JS 语法工业标准。

  • DOM一文档对象模型

文档对象模型( Document Object Model ,简称 DOM ),是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过 DOM 提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。

  • BOM 一 浏览器对象模型

ВОМ( Browser Object Model ,简称 BOM )是指浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。通过 BOM 何以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。

javascript初体验

JS有三种书写方式,分别为行内,内嵌和外部。

行内式

  • 可以将单行或少量 JS 代码写在 HTML 标签的事件属性中(以 on 开头的属性),如: onclick 。
  • 注意单双引号的使用:在 HTML 中我们推荐使用双引号, JS 中我们推荐使用单引号。
  • 可读性差,在 htmI 中编写 JS 大量代码时,不方便阅读。
  • 引号易错,引号多层嵌套匹配时,非常容易弄混。
  • 特殊情况下使用

可以写进三种标签里:

<button onclick="alert('这个小可爱真帅!')">我是button</button>
<input type="button" value="我是input" onclick="alert('这个小可爱真帅!')">
<a href="javascript:alert('这个小可爱真帅!')" rel="external nofollow" >我是a标签</a>

内嵌JS

  • 可以将多行 JS 代码写到< script >标签中。
  • 内嵌 JS 是学习时常用的方式 。
<script>
        alert('我喜欢支持我的哥哥姐姐们!')
</script>

外部JS文件

  • 利于 HTML 页面代码结构化,把大段 JS 代码独立到 HTML 页面之外,既美观,也方便文件级别的复用。
  • 引用外部 JS 文件的 script 标签中间不可以写代码。
  • 适合于 JS 代码量比较大的情况
<script src="1.js"></script>

结语

以上就是初识 JavaScript的详细内容,更多关于初识 JavaScript的资料请关注我们其它相关文章!

(0)

相关推荐

  • js中的正则表达式入门(大量实例代码)

    什么是正则表达式呢? 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个字符串是否含有某种子串.将匹配的子串做替换或者从某个字符串中取出符合某个条件的子串等. 先科普一下基本的知识 js中使用正则表达式,除了了解正则表达式基本的匹配规则外.还需要了解下面的基本的知识: python,js,groovy这些脚本语言都有在线调试的网站,可以在线测试是否有语法错误,用起来也很方便. var reg = new RegExp('\\d{8-20}') reg.

  • Javascript的表单验证-初识正则表达式

    推荐阅读:Javascript的表单验证长度 Javascript的表单验证-提交表单 Javascript的表单验证-揭开正则表达式的面纱 JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证. 验证日期 日期的格式相对特别,不能光凭其长度来验证 常见的日期格式:先以两位数表示日,再以两位数表示月,最后以四位数表示年,期间以斜线分隔. MM/DD/YYYY 博主:怎样设计出验证日期是否符合格式的代码呢? 先来看一下验证日期格式的逻辑吧 将表单域中的值取出,

  • 初识javascript 文档碎片

    后来是一技术群问到以下一段代码: 复制代码 代码如下: function html2node(s) { var d = document.createElement('div'); d.innerHTML = s; if (d.childNodes.length == 1) return d.childNodes[0]; var df = document.createDocumentFragment(); while (d.firstChild) df.appendChild(d.firstC

  • JS回调函数简单易懂的入门实例分析

    本文实例讲述了JS回调函数.分享给大家供大家参考,具体如下: 初学js的时候,被回调函数搞得很晕,现在回过头来总结一下什么是回调函数.什么是JS?(点击查看) 下面先看看标准的解释: <script language="javascript"> function SortNumber( obj, func ) // 定义通用排序函数 { // 参数验证,如果第一个参数不是数组或第二个参数不是函数则抛出异常 if( !(obj instanceof Array) || !(f

  • 初识Javascript小结

    1.HTML 中的脚本必须位于 <script> 与 </script> 标签之间. 脚本可被放置在 HTML 页面的 <body> 和 <head> 部分中 2.如需从 JavaScript 访问某个 HTML 元素,您可以使用 document.getElementById(id) 方法 3.可以通过document.write()向HTML文档写内容,包括标签.注意,如果在文档已加载完成后执行document.write(),整个HTML文档将会被覆盖

  • JavaScript入门初体验书写方式

    目录 javascript历史 javascript是什么? javascript的作用 浏览器执行js简介 javascript的组成 ECMAScript javascript初体验 行内式 内嵌JS 外部JS文件 结语 javascript历史 布兰登艾奇( Brendan Eich ,1961年-). 神奇的大哥在1995年利用10天完成 JavaScript 设计. 网景公司最初命名为 LiveScript ,后来在与 Sun 合作之后将其改名为 JavaScript .(很大部分也是

  • MyBatis入门初体验之使用大全(2)

    MyBatis简介 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis .2013年11月迁移到Github. iBATIS一词来源于"internet"和"abatis"的组合,是一个基于Java的持久层框架.iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO) 1.所需jar包

  • ng-zorro-antd 入门初体验

    Angular版本的 Ant Design 总算发布了,其名曰:ng-zorro-antd. 这人要是越期待,心就越着急.早在8月上旬我就开发好了 ng-zorro-vscode:一个在vscode下的snippets.因此,虽然那时未能探到源代码,但从官网的SDK中,就已经对 ng-zorro-antd 有一定全面性了解. 下面将基于我的理解,从宏观角度解析一下,或许能帮助你更好的去使用 ng-zorro-antd. 再次说一下,ng-zorro-antd 真的是非常有良心的作品. 一.安装

  • vue.js 初体验之Chrome 插件开发实录

    背景 对于经常和动画开发打交道的开发者对于Animate.css这个动画库不会陌生,它把一些常见的动画效果都封装起来了,非常实用.但是有时候在开发中,仅仅只是需要某一两个动画效果,把整个CSS文件都引入,这样不是太好. 需求就出现了,能不能有一个工具可以直接预览Animate.css对应的动画效果,并且生成对应的动画代码呢? 作为一个UI开发,平时跟Chrome浏览器打交道最多,于是就整了一个Chrome插件可以及时预览对应Animate.css中的动画效果并生成对应的动画代码,这样在实际开发中

  • AJAX初体验之实战篇——打造博客无刷新搜索

    如果你对AJAX不是很了解,可以先看看这篇教程的前篇<AJAX初体验之上手篇>. 现在博客很流行,相信应该上网时间稍微长点的朋友都会在这或者在那的有一个自己的博客.对于一些有一定能力的朋友,可能更喜欢自己去下载一个博客程序来架设一个自己的博客,而不是使用一些博客网站提供的服务.而大部分博客程序所带的搜索功能是提交查询关键字到搜索页面,然后在后台生成搜索结果,再呈现给用户,这过程之中浪费了一些带宽,如博客的侧边栏.要节约这一些带宽,我们可以用AJAX来打造自己的无刷新日志搜索. 在本篇教程中,数

  • springcloud初体验(真香)

    一.微服务简介 Ⅰ.我对微服务的理解 微服务是软件开发的一种架构方式,由单一的应用小程序构成的小服务:一个软件系统由多个服务组成:在微服务中,服务是细粒度的,协议是轻量级的(部署简单.性能开销小) Ⅱ.为什么要使用微服务? 随着时代的发展,单体架构(MVC三层模型)越来越不能满足企业的要求:业务规模的不断扩大.团队开发人员的增多,使得单体架构出现了以下几个问题: (1)部署效率低(比如代码量非常多,依赖的包非常多,那么每一次编译打包.部署测试的时间就会很久) (2)团队开发成本高(如果某个模块出

  • JavaScript中localStorage对象存储方式实例分析

    本文实例讲述了JavaScript中localStorage对象存储方式.分享给大家供大家参考,具体如下: [Local storage limitations]文章中提及JavaScript里的local storge的限制,例子中在localStorage里存储了一个bool型的数据,但是却没有像我们期待的一样进行存储. 当我们存储布尔型,数值型,字符串型时,localStorage对象会将我们存储的数据默认转为字符串字面量. localStorage[0] = false;// "fals

  • JavaScript入门基础

    JavaScript基本语法 1.运算符 运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=).算术运算符(+,-,*,/,++,--,%).比较运算符(>,<,<=,>=,==,===,!=,!==).逻辑运算符(||,&&,!).条件运算(?:).位移运算符(|,&,<<,>>,~,^)和字符串运算符(+). 可能很多人不知道&quo

  • JavaScript入门之基本函数详解

    总的来说,函数在JavaScript中可以: ◆ 被赋值给一个变量 ◆ 被赋值为对象的属性 ◆ 作为参数被传入别的函数 ◆ 作为函数的结果被返回 ◆ 用字面量来创建 函数对象 1.1 创建函数 创建JavaScript函数的一种不长用的方式(几乎没有人用)是通过new操作符来作用于Function"构造器": 复制代码 代码如下: var funcName = new Function( [argname1, [... argnameN,]] body ); 参数列表中可以有任意多的参

  • js原型链与继承解析(初体验)

    首先定义一个对象obj,该对象的原型为obj._proto_,我们可以用ES5中的getPrototypeOf这一方法来查询obj的原型,我们通过判断obj的原型是否与Object.prototype相等来证明是否存在obj的原型,答案返回true,所以存在.然后我们定义一个函数foo(),任何一个函数都有它的prototype对象,即函数的原型,我们可以在函数的原型上添加任意属性,之后通过new一个实例化的对象可以共享其属性(下面的两个例子会详细介绍). function foo(){} fo

随机推荐