JavaScript,男,web页面的一种脚本编程语言,1955年诞生,妻子为HTML,魔法能力是将静态页面(经过与用户交互与相应)转变为动态页面。

刚进入浏览器市场(魔界)的时候,也就是js1.0岁的时候,心高气傲,为非作歹,经常化作三种形态(版本)的外貌在程序街兴风作浪。1977年,欧洲计算机制造商协会(ECMA)出马,标准化了JavaScript,终于将他驯服。所以至今js背上都刻着当初那道符咒残留下来的伤疤,这也成为他的一个引人注目的标志,当初收服就是的符咒被称为“ECMAScript程序语言的规范书”,又叫“ECMA-262标准”。

一、js的主要特点

1、解释性:源代码不需要变异就可以被浏览器解释,因此他是解释性语言。而比如像C、C++,都是要编译的。

2、基于对象:基于对象的语言,就是能运用自己创建的对象。

3、事件驱动:可直接对输入做出响应,无序经过web服务程序,而他的响应,就来自事件驱动。

4、跨平台:只依赖与浏览器,与操作环境无关,只要电脑能运行浏览器,就能执行js。

5、安全性:只能通过浏览器实现信息浏览或动态交互,不能碰本地硬盘,不能把数据存入服务器,更不能对网络文档进行修改和删除。

二、js在HTML中的使用

在web网页中,使用JS有三种方法。第一种:在页面中直接嵌入JS代码;第二种:链接外部JS文件;第三种:作为特定标签的属性值使用。

第一种方法:在页面中直接嵌入JS代码。

该方法是使用<script></script>标记,把JS代码放在标记里面,同时把标记放在<body>或者<head>标签里面。该标记共有四个属性。

(1)language:指定HTML中使用的脚本语言及版本。现已经被type属性代替。

(2)type:指定HTML中使用的脚本语言及版本。<script type='text/javascript'></script>,必填项。

(3)src:指定外部脚本文件的路径。

(4)defer:文档加载完毕后再执行脚本,<script defer/>:当脚本语言不需要立即运行时,设置defer后,浏览器将不必等待脚本语言装载,这样页面加载就更快。如果一些脚本需要在加载过程中或加载完成后立即执行,就不需要defer属性了。

例:

<script type='text/javascript'>

console.log('在页面中嵌入JS代码');

</script>

第二种方法:链接外部JS文件,src属性也就成了必填项。这是最常用的方法。

该方法是使用<script></script>标记,把JS代码放在标记里面,同时把标记放在<body>或者<head>标签里面。

例:

<script type='text/javascript' src='01.js'></script>

第三种方法:作为标签的属性值使用,不常用到,不写了。

顺便,提一句样式表的引用。不同的是,它不是通过标签引用,而是通过<link />链接引用的。同样也是应用了2个属性,但是属性值与js不一样,它们分别是rel和href。比如:

<link rel="stylesheet" href='./secret.css' />
 
 
三、JS的DOM
DOM的级别共有两级别
W3C在98年10月标准化了DOM第一级,定义了基本的接口。00年11月标准化了DOM的第二级,对接口进行升级,并定义了文档事件和CSS样式表的标准API。
 
(1)节点常用的属性如下:
nodeName——
NodeType
NodeValue
(2)遍历文档树
 当前节点的最后一个子节点——obj.lastChild
当前节点的父节点——obj.parentNode
那么,如果想要获取爷爷节点话,怎么办呢?就是父节点的父节点。
 
 
 
四、DOM的操作
(1)创建节点
1、创建新节点
createElement()
createTextNode()
appendChild()
2、创建多个节点
使用循环语句,常见多个节点
3、创建多个节点——碎片节点
createDocumentFragment()方法
 
(2)插入节点
insertBefore(new,ref)
在ref节点前插入new节点
js没有提供insertAfter方法,我好像明白为什么没有这个方法的原因了。因为如果想要在某个节点后面插入新的节点,其实就是在该节点的容器中插入新的节点,只要找到这个节点所在的容器,然后使用append()方法或appendChild()方法,就能达到这样的效果了。
目前还未发现append方法和appendChild方法的区别。
 
(3)复制节点
obj.cloneNode(deep)
deep为布尔值,深度复制或简单复制。
 
(4)删除与替换节点
obj.removeChild(oldChild)
obj.replaceChild(new,old)
obj是该节点所在的父节点。
 
五、DHTML
通过DOM可以获取网页对象,通过DHTML对象模型的方法,也可以获取网页对象。
优点:可以不必了解文档对象墨香的具体层次结构,直接得到网页中所需要的对象。
innerHTML、innerText、outerHTML、outerText四个属性可以很方便的读取和修改HTML元素内容。
 
 
 
 
 
 
 
 
 

JavaScript简单简介的更多相关文章

  1. JavaScript面向对象简介

    JavaScript面向对象简介 @(编程) [TOC] 1. 命名空间 命名空间是一个容器,它允许开发人员在一个独特的,特定于应用程序的名称下捆绑所有的功能. 在JavaScript中,命名空间只是 ...

  2. JavaScript简单入门(补充篇)

    本文是对上一篇 JavaScript简单入门 的一些细节补充. 一.全局变量和局部变量 在<script>标签内定义的变量是当前页面中的全局变量.即 <script>标签可以直 ...

  3. 《javascript高级程序设计》读书笔记(一)javascript简单介绍

    第一章:javascript简单介绍 Netscape Navigator 开发的javascript   Javascript的实现有三部分: 1.核心(ECMAScript):提供核心语言功能. ...

  4. Javascript 简单实现鼠标拖动DIV

    http://zhangbo-peipei-163-com.iteye.com/blog/1740078 比较精简的Javascript拖动效果函数代码 http://www.jb51.net/art ...

  5. JavaScript(一)——简介(简单介绍)

    1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司(已被Oracle收购了),J ...

  6. [Java Web] 4、JavaScript 简单例子(高手略过)

    内容概览: JavaScript简介 JavaScript的基本语法 JavaScript的基本应用 JavaScript的事件处理 window对象的使用 JavaScript简介: JavaScr ...

  7. JavaScript 简单介绍

    一.简介 JavaScript是一门面向对象的动态语言,他一般用来处理以下任务: 修饰网页 生成HTML和CSS 生成动态HTML内容 生成一些特效 提供用户交互接口 生成用户交互组件 验证用户输入 ...

  8. JavaScript简单分页,兼容IE6,~3KB

    简介 兼容IE6+及现代浏览器的简单分页,支持同一页面多个分页. 使用 Browser <link rel="stylesheet" href="css/GB-pa ...

  9. javascript - 简单实现一个图片延迟加载的jQuery插件

    最近在看一本书<Third-Party Javascript>很不错,推荐给大家,下载地址各位自己搜索了. 步骤: 1.打开google,鉴于google基本打不开,那么就打开这个网址吧. ...

随机推荐

  1. sql注入的防护

    一.严格的数据类型 在Java,C#等高级语言中,几乎不存在数字类型注入,而对于PHP,ASP等弱类型语言,就存在了危险. 防御数字型注入相对简单,如果不需要输入字符型数据,则可以用is_numeri ...

  2. Python+Pycharm—学习1—封装&导入

    一.封装 目的: 写了一个复杂功能的实现,下次有相同的需求时可以直接导入这个包来使用.就可以达到复用的目的了.通俗的来讲就是打包.(以下用四则运算举例) 方案: 1.1.新建python工程,新建一个 ...

  3. 初学Python——函数

    一.函数定义 def name( parameters): #没有参数括号内可以为空 "函数描述" #其实就是注释 <代码块> return [expression] ...

  4. SimpleDialogBox

    import 'package:flutter/material.dart';import 'dart:ui';import 'dart:async';enum Option{A,B,C}void m ...

  5. java单例模式总结

    目录 一. 饿汉模式(静态初始化) 二.双重检查锁(dcl) 三. 延迟占位类 四.枚举实现 最后 常见安全的单例实现代码和自己的一点理解. 一. 饿汉模式(静态初始化) class Singleto ...

  6. springcloud(十三):Eureka 2.X 停止开发,但注册中心还有更多选择:Consul 使用详解

    在上个月我们知道 Eureka 2.X 遇到困难停止开发了,但其实对国内的用户影响甚小,一方面国内大都使用的是 Eureka 1.X 系列,另一方面 Spring Cloud 支持很多服务发现的软件, ...

  7. 显式与隐式(ExplicitAndImplicit)

    显式与隐式(Explicit And Implicit) 1.概念 1.1 显式 实现的单词Explicit意思是清楚的.明确的.详述的.所以,显式的“显”是指明显且清楚的实现,相对于接口来说,就是明 ...

  8. 助力ASP.NET Core 2.1开发!Layx 企业级弹窗插件发布!

    我们在开发B/S架构企业管理系统时经常用到弹窗.目前市场上主要有两大弹窗:layer/artdialog,这两款做的都非常的棒.由于我们ERP系统比较复杂.需要能够拥有和Windows弹窗一样的弹窗组 ...

  9. ORM 多表操作查询及增删改查

    ------------------------------------------只有对前途乐观的人,才能不怕黑暗,才能有力量去创造光明.乐观不是目的,而是人生旅途中的一种态度. 多表操作 创建模型 ...

  10. OO博客作业3:第9-11周作业总结

    一.总结介绍规格化设计的大致发展历史和为什么得到了人们的重视 1.规格化设计的大致发展历史 规格化设计,又称契约式设计,最早由Bertrand Meyer于1986年提出,出自于<面向对象软件构 ...