什么中DOM:

DOM是一套对文档内容进行抽象各概念化的方法;

例如:我们对别人说:“猫在沙发上!”;别人听到的不会是“狗已经跑了”;这是因为人类对已有的事物有了一套公有的认识;再比如,有人问你,“左手边第三家饭店叫什么 ”;而回答者必需要理解问话者所说的左手边,与第三的含意;同样的在javaScript也同样实用;当我们通过javaScrit控制某个网页元素,或是改变样式时,首先要获得该元素;而获得这些元素的方法正是DOM所约定的;现代DOM多指W3C所约定的一套针对大多是网页而设定的通用api;

javaScript语法:

在html中引用javaScript方法:

方法一:

将代码放在<head></head>标签之间;

<head><stript>javaScript代码放在此处</stript></head>

方法二:

javaScript.js  //源代码单独文件

<stript src = "javaScript.js"> </script>  //将此标签放在html文件<head>或<body>之中;

更好的做法是放在<body> ......<stript src = "javaScript.js"> </script> </body>更有助于网页加载

变量的声明:

var a, b, c, d;

a = "hello";

b = 12;

c = 15.2;

d = 'y';

也可以一次完成,效率更高:var a = "hello", b = 12, c = 15.2, d = 'y';

数组:

创建数组

var a = Array(4);//指定数组大小为4

var b = Array(); //不指定大小的数组

数组的初始化

a[0] = "frist";

a[1] = 2;

a[2] = 3;

a[3] = true;

也可以一步完成 var c = Array("frist", 2, 3, true);//创建初始化

还有一种更简单的方法 var c = ["frist", 2, 3, true];

数组存放的数据,不一定是同一种类形,还可以将变量存放入数组,甚至是数组存放入数组;

对象:

创建对象

var d = Object();

d.name = "alswd";

d.age = 18;

更简单的方式:var d = {name: "alswd", age: 18};

初始化上文b数组:b[0] = d;

访问数组元素,b[0].name = "alswd"; b[0].age = 18;

操作符:

与c++基本相同;

区别:字符串的+运算

var a = "hello " + “world”;

将两个字符串拼接;最终a = "hello world";

值得注意的是,字符串与数值相加得到的是字符串的拼接

var b = “this is ” + 5; 结果 b = "this is 5";

条件判断,逻辑运算,循环语句基本与其它语言相同

值得注意的是条件判断===是可以判断两个值数据类型与值完全相等

==只判断值相等

函数:

如需要多次使用同一段代码 ,则可以把它封装成函数;

函数的定义:

function name(arguments){}

与c++不同的是,他不需要返回值的类型;取而代之的是关键字function;

对象

可以理解成一个简单版c++类,有属性有方法;

在javaScript中对象主要分为:

用户定义对象:由程序员自己定义的对象

内建对象:内建在javaScript语言里的对象;如Array, Math, Date等;

宿主对象:由浏览器提供的对象;  如window对象;window.alrt("hello world");

DOM

(Document , Object, Model) 文档对象模型每当在浏览器创建一个网页,DOM就会把网页转换成一个文档对象模型;文档称为"节点树";

节点:(node)

元素节点(element node):html上的每一个标签,可以理解为一个元素节点,如<body></body>是一个元素结点;

文本节点(text node):再如<p>"hello "</p> <p>元素包含着文本,他是一个文本节点;在<xhtml>中每个文本节点必需放在元素节点内部;而元素节点不一定都有文本节点;

属性节点(attribute node): 由于属性总是放在起始标签里,所以属性节点总是包含在元素节点中;

获取元素节点对象方法:

document.getElementById("html id 属性");通过元素id返回的是该元素的对象

document.getElementsByTagName("li");返回的是一个元素标签对象数组

document.getElementsByClassName("类名"); 通过类名返回相同元素对象数组

获取元素属性方法:

getAttribute("title"); //由于元素属性节点是继存于元素节点的,所以在使用getAttribute()方法首先要获取此元素节点对象;通过对象调用方法返回属性值

如:<p title = "test"> 测试 </p>

document.getElementsByName("p").getAttribute("title");

设置元素属性方法:

setAttribute("attribute", "new vlau");

总结:

主要使用到的方法:

document.getElementById("id");

document.getElementsByName("element");

document.getElementsByClass("class");

(object.)getAttribute("attribute");

(object.)setAttribute("attribute", "valu");

javaScript第一篇的更多相关文章

  1. javaWeb核心技术第三篇之JavaScript第一篇

    - 概述 - JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言 - 作用:给页面添加动态效果,校验用户信息等. - 入门案例 - js和html的整合 - 方式1:内联式 ...

  2. javascript第一篇----使用简介

    使用技巧 Javascript加入网页有两种方法:直接方式和引用方式. 直接方式 直接调用分为两种形式:代码块和代码行 代码行引用: <a href="javascript:alert ...

  3. 深入理解javascript对象系列第一篇——初识对象

    × 目录 [1]定义 [2]创建 [3]组成[4]引用[5]方法 前面的话 javascript中的难点是函数.对象和继承,前面已经介绍过函数系列.从本系列开始介绍对象部分,本文是该系列的第一篇——初 ...

  4. 《javascript权威指南》读书笔记——第一篇

    <javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...

  5. 深入理解javascript函数系列第一篇——函数概述

    × 目录 [1]定义 [2]返回值 [3]调用 前面的话 函数对任何一门语言来说都是一个核心的概念.通过函数可以封装任意多条语句,而且可以在任何地方.任何时候调用执行.在javascript里,函数即 ...

  6. 深入理解javascript作用域系列第一篇——内部原理

    × 目录 [1]编译 [2]执行 [3]查询[4]嵌套[5]异常[6]原理 前面的话 javascript拥有一套设计良好的规则来存储变量,并且之后可以方便地找到这些变量,这套规则被称为作用域.作用域 ...

  7. 深入理解javascript作用域系列第一篇

    前面的话 javascript拥有一套设计良好的规则来存储变量,并且之后可以方便地找到这些变量,这套规则被称为作用域.作用域貌似简单,实则复杂,由于作用域与this机制非常容易混淆,使得理解作用域的原 ...

  8. 深入理解javascript函数系列第一篇

    前面的话 函数对任何一门语言来说都是核心的概念.通过函数可以封装任意多条语句,而且可以在任何地方.任何时候调用执行.在javascript里,函数即对象,程序可以随意操控它们.函数可以嵌套在其他函数中 ...

  9. JavaScript数组方法大全(第一篇)

    数组方法大全(第一篇) 注意:第一次写博客有点小紧张,如有错误欢迎指出,如有雷同纯属巧合,本次总结参考书籍JavaScript权威指南,有兴趣的小伙伴可以去翻阅一下哦 join()方法 该方法是将数组 ...

随机推荐

  1. Ruby Rails学习中:关于测试的补充,MiniTest报告程序,Guard自动测试

    一. 关于测试的补充 1.MiniTest报告程序 为了让 Rails 应用的测试适时显示红色和绿色,我建议你在测试辅助文件中加入以下内容: (1).打开文件:test/test_helper.rb ...

  2. MySQL8在CentOS7上的安装

    Install_CentOS7_MySQL8_binary.sh #!/bin/bash MySQL_Package=mysql-8.0.16-linux-glibc2.12-x86_64.tar.x ...

  3. java:线上问题排查常用手段(转)

    出处:java:线上问题排查常用手段 一.jmap找出占用内存较大的实例 先给个示例代码: import java.util.ArrayList; import java.util.List; imp ...

  4. js 中的 number 为何很怪异

    js 中的 number 为何很怪异 声明:需要读者对二进制有一定的了解 对于 JavaScript 开发者来说,或多或少都遇到过 js 在处理数字上的奇怪现象,比如: > 0.1 + 0.2 ...

  5. TreeSet——实现Comparable接口并重写CompareTo()方法

    TreeSet是以自然顺序存的数据,例如 Set<Student> students=new TreeSet(); students.add(new Student("111&q ...

  6. dgv数据绑定后,添加行遇到过的问题并解决

    1. 当控件被数据绑定时,无法以编程方式向 DataGridView 的行集合中添加行 解决方法:((DataTable)Dgv.DataSource).Rows.Add("", ...

  7. Navicat 12的安装与使用(附加破解)

    地址https://blog.csdn.net/tomos428/article/details/80483450?tdsourcetag=s_pctim_aiomsg

  8. C# struct结构知识总结

    结构是一种值类型,使用struct关键字定义. 结构可以包含字段.常量.事件.属性.方法.构造函数.索引器.运算符和嵌套类型.但若结构中同时需要上述所有成员,应考虑将结构改为类. 嵌套类型:在类或构造 ...

  9. cookie转换成字典类型方便scraoy 使用

    #bakooie装换成紫电模式方便scrapy使用 cookid = "_ga=GA1.2.1937936278.1538889470; __gads=ID=1ba11c2610acf504 ...

  10. 深入Java虚拟机之内存区域与内存溢出

    一.内存区域 Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域.Java虚拟机规范将JVM所管理的内存分为以下几个运行时数据区:程序计数器.Java虚拟机栈.本地方 ...