(一)JavaScript字符串操作

JavaScript的字符串就是用' '或" "括起来的字符表示,日常的学习中有时候需要对字符串进行相关的操作。例如要获取字符串某个指定位置的字符,须使用类似Array数组的下标操作,索引号从0开始:

  1. var str='Hello World!'
  2. alert(str[0] ) //'H'
  3. alert(str[6] ) //'W'
  4. alert(str[12] ) //索引超出字符串的范围,但不会报错,一律返回undefined

JavaScript为字符串提供了一些常用方法,调用这些方法不会改变原有字符串的内容,但是会返回一个新的字符串。以下为字符串操作常用的四种方法:

 toUpperCase() 把一个字符串全部变为大写:

  1. var str='Hello World!';
  2. str.toUpperCase() //返回hello world!

 toLowerCase() 把一个字符串全部变为小写: 

  1. var str='Hello World!'
  2. str.toLowerCase() //返回hello world!

    indexOf() 会搜索指定字符串出现的位置

  1. var str='Hello World!';
  2. str.indexOf('ello'); //返回1
  3. str.indexOf(' '); //返回5
  4. str.indexOf('World'); //返回6
  5. str.indexOf('world'); //没有找到指定字符串,返回-1

 substring() 会返回指定索引区间的子串:

  1. var str='Hello World!';
  2. str.substring(0, 5); //返回"Hello"
  3. str.substring(2, 8); //返回"llo Wo"
  4. str.substring(-1); //返回"Hello World!"
  5. str.substring(-6); //返回"Hello World!"

(二)JavaScript数组操作

JavaScript的数组Array可以包含任何数据类型,并通过索引来访问每个元素。例如要获得数组Array的长度,可以直接访问数组Array的length属性:

  1. var arr=[1,'true',3,4,'false'];
  2. arr.length; //返回5

 若直接给数组Array的length赋予一个新的值会导致数组Array大小的变化:

  1. var arr=[1,'true',3,4,'false'];
  2. arr.length=7;
  3. alert(arr); //返回[1,true,3,4,false,,]
  4. arr.length=3;
  5. alert(arr); //返回[1,true,3]

若数组Array通过索引把对应的元素修改成新的值(包括索引超过了范围),数组Array也会发生变化:

  1. var arr=[1,'true',3,4,'false'];
  2. arr[1] = 99;
  3. alert(arr); //arr变为[1, 99, 3,4, 'false']
  4. arr[4] = true;
  5. alert(arr); //arr变为[1,'true',3,4,'true']

与字符串一样,JavaScript也为数组操作提供了一些函数方法。

    indexOf() 与String的类似,搜索一个指定的元素的位置:

  1. var arr = [1, 6, 'hello', null];
  2. arr.indexOf(null); //返回3
  3. arr.indexOf(6); //返回1
  4. arr.indexOf('6'); //没有找到元素'6',返回-1

    slice() 对应String的substring() ,截取数组Array部分元素,返回一个新的数组Array:

  1. var arr = [1, 6, 'hello', null];
  2. arr.slice(0, 2); //返回[1, 6]
  3. arr.slice(3); //返回[null]
  4. arr.slice(); //返回[1, 6, 'hello', null]

    push() 往数组Array的末尾添加若干元素,pop() 则把数组Array的最后一个元素删除掉:

  1. var arr = [1, 6, 'hello', null];
  2. arr.push(99, 'A');
  3. arr; //arr变为[1, 6, 'hello, null, 99, 'A']
  4. arr.pop();
  5. arr; //arr变为[1, 6, 'hello, null, 99]

unshift() 往数组Array的头部添加若干元素,shift() 则把数组Array的第一个元素删掉:

  1. var arr = [1, 6, 'hello', null];
  2. arr.unshift(99, 'A');
  3. arr; //arr变为[99, 'A', 1, 6, 'hello, null]
  4. arr.shift();
  5. arr; //arr变为['A', 1, 6, 'hello, null]

sort() 是对数组Array的当前元素进行排序,而reverse() 则是颠倒数组Array中元素的顺序:

  1. var arr=[1, 'C', 'A', 9];
  2. arr.sort(); //返回[1, 9, "A", "C"]
  3. arr.reverse(); //返回["C", "A", 9, 1]

splice() 方法是修改数组Array的“万能方法”,它可以从指定的索引开始删除若干元素,然后再从该位置添加若干元素:

  1. var arr = [1, 6, 'hello', null];
  2. //从索引1开始删除2个元素,然后再添加2个元素
  3. arr.splice(1, 2, 'A', 99); //返回删除的2个元素[6, 'hello']
  4. arr; //arr变为[1, 'A', 99, null]
  5. arr.splice(2, 1); //返回从索引2开始删除的1个元素[99]
  6. arr; //arr变为[1, 'A', null]

(三)JavaScript Dom基本操作

DOM(Document Object Model),即文档对象模型,是针对HTML和XML文档的一个API(应用程序编程接口)。DOM描绘了一个层次化的节点树,它允许开发人员添加、移除和修改页面的某一部分。当我们创建了一个网页并把它加载到Web浏览器上,DOM就在幕后悄然而生,因为它把你所编写的网页文档转换为一个文档对象。

  我们可以这么理解DOM,把DOM看做一棵节点树,主要由元素节点、属性节点、文本节点三种节点构成。例如下方的一行HTML代码,

  1. <p title="reminder">Hello JavaScript</p>

其中 p 为元素节点,title="reminder" 为属性节点,Hello JavaScript 为文本节点。

  HTML文档中每一个元素节点都是一个对象,其中3个获取特定元素的方法分别是: getElementById、getElementsByTagName 和 getElementsByClassName 方法。当我们得到需要的元素后,就可以获取它的各个属性,getAttribute 方法就是用来做这件事的,而 setAttribute 方法则用来更改属性节点的值。

例如下方的HTML文档,对其进行JavaScript的 DOM 的5种基本方法操作,如下所示:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Mobile phone</title>
  6. <style type="text/css">
  7. body {
  8. color: white;
  9. background-color: black;
  10. }
  11. p {
  12. color: yellow;
  13. font-family: "arial", sans-serif;
  14. font-size: 1.2em;
  15. }
  16. #purchases {
  17. border: 1px solid white;
  18. background-color: #333;
  19. color: #ccc;
  20. padding: 1em;
  21. }
  22. #purchase li {
  23. font-weight: bold;
  24. }
  25. </style>
  26. </head>
  27. <body>
  28. <h1>What to buy</h1>
  29. <p title="reminder">Never Settle !!!</p>
  30. <ul id="purchases">
  31. <li>HUAWEI</li>
  32. <li class="sale">OPPO & vivo</li>
  33. <li class="sale important">mi</li>
  34. </ul>
  35. </body>
  36. </html>

    getElementById 方法,返回那个给定 id 属性值的元素节点对应的对象:

  1. <script>
  2. 2   alert(typeof document.getElementById("purchases")); //弹出的对话框显示object
  3. </script>

getElementsByTagName 方法,返回一个对象数组,每个对象对应着文档里给定标签的一个元素:

  1. <script>
  2. var items = document.getElementsByTagName("li");
  3. for(var i = 0; i<items.length; i++){
  4.    alert(typeof items[i]);    //弹出的对话框显示object,重复3次
  5. }
  6. </script>

getElementsByClassName 方法,返回一个对象数组,每个对象对应着文档里给定类名的一个元素:

  1. 1 <script>
  2. 2 var shopping = document.getElementById("purchases");
  3. 3 var sales = shopping.getElementsByClassName("sale");
  4. 4 alert(sales.length);    //弹出的对话框显示2
  5. 5 </script>

getAttribute 方法,获取元素节点的各个属性:

  1. <script>
  2. var paras = document.getElementsByTagName("p")
  3. for(var i = 0; i<paras.length; i++){
  4. alert(paras[i].getAttribute("title")); //弹出的对话框显示reminder
  5. }
  6. </script>

setAttribute 方法,对属性节点的值做出修改:

  1. <script>
  2.    var shopping = document.getElementById("purchases");
  3. alert(shopping.getAttribute("title"));     //弹出的对话框显示null(空的值)
  4. shopping.setAttribute("title", "a list of goods");
  5. alert(shopping.getAttribute("title"));     //弹出的对话框显示a list of goods
  6. </script>

JavaScript的字符串、数组以及DOM操作总结的更多相关文章

  1. Javascript 解析字符串生成 XML DOM 对象。

    Javascript 接收字符串生成 XML DOM 对象.实测对 Firefox .IE6 有效.可用于解析 ajax 的服务器响应结果,也可用于解析自定义字符串.​1. [代码]函数   ppt模 ...

  2. Javascript的字符串(String)操作学习

    1.bold() 方法用于把字符串显示为粗体.语法: stringObject.bold() 如下,对str进行bold操作之后,实际上时对这个字符串加了<b>标签,在文档中将以粗体进行展 ...

  3. JavaScript中字符串,数组的基本操作

    JavaScript的字符串就是用”或”“括起来的字符表示. js中操作字符串: 1.获得字符串的长度 var s = 'Hello, world!'; s.length; // 132.获取指定字符 ...

  4. javascript学习(二) DOM操作HTML

    一:DOM操作HTML JavaScript能够改变页面中所有的HTML元素 JavaScript能够改变页面中所有的HTML属性 JavaScript能够改变页面中所有的CSS样式 JavaScri ...

  5. C++下面关于字符串数组的一些操作

    今天在写一个搜索引擎的分词系统,是很简单的那种,但是居然费了我一天的时间还没完成,晚上估计还得弄一会了,但是在这个过程中,遇到了集中关于字符串数组的操作,值得和大家分享一下. 首先是关于统计字符串数组 ...

  6. [JavaScript] 将字符串数组转化为整型数组

    var dataStr="1,2,3,4,5";//原始字符串 var dataStrArr=dataStr.split(",");//分割成字符串数组 var ...

  7. JavaScript学习笔记系列2:Dom操作(一)

    一.什么是Dom? DOM------>Document Object Model 直接翻译就是文档对象模型. DOM------>定义了表示和修改文档所需的对象.这些对象的行为和属性以及 ...

  8. JavaScript基础2---控制权DOM操作

    文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM将HTML文档呈现为带有元素,属性和文本的树结构(节点树). HTML文档可以说由节点构成的 ...

  9. 常用数组、字符串方法总结&获取元素、DOM操作

    字符串的方法.返回值.是否改变原字符串:1 charAt() 方法可返回指定位置的字符. 不改变原始字符串 JavaScript并没有一种有别于字符串类型的字符数据类型,返回的字符是长度为 1 的字符 ...

随机推荐

  1. cocos2d-x《农场模拟经营养成》游戏完整源代码

    cocos2d-x农场模拟经营养成游戏完整源代码,cocos2d-x引擎开发,使用JSON交互,支持IOS与 Android,解压后1016MB. 非常强大的游戏源代码         完整游戏源代码 ...

  2. VC双缓冲画图技术介绍

    双缓冲画图,它是一种主要的图形图像画图技术.首先,它在内存中创建一个与屏幕画图区域一致的对象,然后将图形绘制到内存中的这个对象上,最后把这个对象上的图形数据一次性地拷贝并显示到屏幕上. 这样的技术能够 ...

  3. thinkphp使后台的字体图标显示异常

    thinkphp使后台的字体图标显示异常 相似问题 1.thinkPHP的这些图标都不显示了-CSDN论坛https://bbs.csdn.net/topics/391823415 解答: 发现在别的 ...

  4. HtmlHelper的扩展分页方法

    一.新建一个空MVC项目,命名为MVCAppPager 二.新建一个文件夹PageHelper,在文件夹下新建接口IPageList以及实现类PageList IPageList接口: public ...

  5. HBase的单节点集群详细启动步骤(分为Zookeeper自带还是外装)

    伪分布模式下,如(weekend110)hbase-env.sh配置文档中的HBASE_MANAGES_ZK的默认值是true,它表示HBase使用自身自带的Zookeeper实例.但是,该实例只能为 ...

  6. POSTGRESQL NO TABLE

    POSTGRESQL EXTENDING SQL GRIGGER PROCEDURAL

  7. SQL server 事务介绍,创建与使用

    事务(Transaction)事务是一种机制,一个操作序列,包含一组操作指令,并且把所有的命令作为一个整体一起向系统提交或撤销操作请求(即要么全部执行,要么全部不执行)---------------- ...

  8. 如何把本地的项目推送到github上面去

    前题:本地已经建好了项目,但电脑上没有安装git  (windows 系统) 1.首页从网上下载git 并安装. 2.进入项目所在的文件夹,右键鼠标 3.新建.gitignore文件 touch .g ...

  9. Network Stack‎ : HTTP authentication

    HTTP authentication As specified in RFC 2617, HTTP supports authentication using the WWW-Authenticat ...

  10. 织梦(dedecms)彩色标签云(tag)随机颜色和字体大小

    1.选择你所要加页面的模板,一般是在首页index.htm 加上如下代码 01 <!-- /下面开始tag标签云 --> 02 <dl class="tbox light& ...