传送门--http://www.cnblogs.com/Sabo-dudu/p/5786683.html (一)

六. JS 数组类型

数组是一种保存数据的有序列表,数组的每一项可以保存人意类型的数据,

数组的大小可以动态调整,可以随着 数据的添加自动增长以容纳新增数据

1>.数组的创建

a. 创建数组 new Array() ;

b. 字面量形式[]

2>.数组中的冒泡排序法

  • for (var i = 0; i < array.length - 1; i++) {
  • for (var j = 0; j < array.length - 1 - i; j++) {
  • if (array[j] > array[j + 1]) {
  • var tmp = array[j];
  • array[j] = array[j + 1];
  • array[j + 1] = tmp;
  • }
  • }
  • }

3>. 数组常用的属性和方法

a. 数组的长度,即元素的个数lenght

b. 获取数组元素的方式为数组的下标,范围(0到 lenght-1)

c. 尾部添加元素 push()

d. 尾部删除元素 pop()

e. 头部添加元素 unshift ()

f.  头部删除元素 shift ()

g. 数组翻转的方法 reverse() 数组排列(降序排列)

h. 查找元素在数组中的对应下标 indexOf ()

j. 最后 一个 元素的下标 lastIndexOf  ()

k. 数组的拼接,返回新的数组 concat ()

l. splice (替换指定下标元素, 删除以某个下标起始的后 n个元素, 将元素插入到指定下标 )

  • splice (起始位置,长度) 从起始位置开始,删除长度个元素
  • splide (起始位置,0, 要插入的元素1,要插入的元素2) 从起始位置删除0个元素,然后把插入的元素从起始位置插入进数组
  • splice (要替换元素起始位置, 要替换元素的长度,新替换的元素)

m. 可以使用 括号中的参数作为数组中的元素分隔符   join ()

n. 数组的排序  sort() 按照 ASICC 阿斯克玛表 (升序排列)

七. String 字符串

1>. 定义:

a.其他类型数据转换成字符串的方法   toSting ()

b. String ()

c. 字面量形式 ' ' , "  "

2>. 字符串常用的方法和属性

a. 长度属性 lenght

b. 指定下标的字符charAt ()  范围 0到 lenght -1

c. 求子字符串(substring 参数不能为负, substr, slice  接受负数,-1 指字符串最好 一个字符)

d. 字符切割 split () 两个参数 第一个是用于切分的字符,第二个数组的长度

e. 查找字符串,返回字符在目标字符串中的下标,未找到则返回 -1  search ()

f. 字符串替换 replace ()

g. 字符串拼接 concat ()

八. Math 类

1>. 求最小值min ()

2>. 求最大值max ()

3>. 向上取整ceil ()

4>. 向下取整floor ()

5>. 四舍五入 round ()

6>. 求0-1随机数 random ()  求任意范围[a,b]之间的随机数:

Math.floor(Math.random() *(b-a+1) +a)

九.  Date 类

1>. 获取当前的日期  new Date ()

2>. 获取年份 getYaer ()三位, 获取完整年份  getFullYear ()

3>. 获取月份 getMonth  () 从0开始,即 0为一月

4>. 获取星期 getDay () 从0开始, 即星期日为 0

5>.  获取小时 getHours ()

6>. 获取分钟 getMinutes  ()

7>. 获取秒数 getSeconds ()

8>. 获取当前时间到 1970年 1月1日0时的时间间隔,单位:毫秒 getTimes ()

9>. 获取当前日期的毫秒 getMilliseconds ()

十. DOM

1>.概念

Documetn Object Model  文档对象模型

  • JavaScript 能够改变页面中的所有 HTML 元素
  • JavaScript 能够改变页面中的所有 HTML 属性
  • JavaScript 能够改变页面中的所有 CSS 样式
  • JavaScript 能够对页面中的所有事件做出反应

2.> 常用方法

a. 根据标签的id获取标签  getElementById ()

b. 根据标签名获取标签   getElementsByTagName ()   返回数组

c. 根据name 获取标签  getElementsByName ()   返回数组

d. 根据className来获取标签  getElementsByClessName ()  返回数组

e. 创建标签createElement ()

f.  添加子标签 appendChild ()

g. 获取子标签数组  children() 和 childNodes ()

h. 删除子标签  removeChild ()

j. 替换标签 replaceChild ()

k. 插入标签 insertBefore ()

l.  复制子标签 cloneNodes ()

m. 获取父级标签 parebtNode ()

JS 初级 二(接上)的更多相关文章

  1. Coding 初级教程(二)——上传已有项目

    Coding 初级教程(二)——上传已有项目 [摘要:方针读者 :已具有 Coding.net 的账号. 本文首要先容若何把项目上传到 Coding.net 上. 分两种环境,一种是项目已归入到 gi ...

  2. 【原创】高性能网络编程(二):上一个10年,著名的C10K并发连接问题

    1.前言 对于高性能即时通讯技术(或者说互联网编程)比较关注的开发者,对C10K问题(即单机1万个并发连接问题)应该都有所了解."C10K"概念最早由Dan Kegel发布于其个人 ...

  3. 前端总结·基础篇·JS(二)数组深拷贝、去重以及字符串反序和数组(Array)

    目录 这是<前端总结·基础篇·JS>系列的第二篇,主要总结一下JS数组的使用.技巧以及常用方法. 一.数组使用 1.1 定义数组 1.2 使用数组 1.3 类型检测 二.常用技巧 2.1 ...

  4. js实现oss文件上传及一些问题

    关于兼容性问题,ie8以下的可以使用4.x的版本 一.引入sdk和jq <script src="http://libs.baidu.com/jquery/2.0.0/jquery.m ...

  5. js生成二维码以及点击下载二维码

    js生成二维码 jquery.qrcode.js可以快速使用页面生成二维码.但改项目有两个小问题:1.不支持中文:2.不支持二维码中间生成图片. 支持中文的jquery-qrcode jquery.q ...

  6. JS的二维数组

    今天,记录一下JS的二位数组,并附上例题. 一.二维数组的本质:数组中的元素又是数组. 其实,我们都见过这样的二维数组,只不过没在意罢了,例如: var arr = [[1,2,4,6],[2,4,7 ...

  7. Java与JS生成二维码

    1.二维码概念 二维码/二维条码是用某种特定的集合图形按一定规律在平面上(二维方向上)分布的黑白相间的图形记录数据符号信息的图片. 黑线是二进制的1,空白的地方是二进制的0,通过1.0这种数据组合用于 ...

  8. js 生成二维码图片

    1.用纯JavaScript实现的微信二维码图片生成器 QRCode.js是javascript实现二维码(QRCode)制作生成库. QRCode.js有着良好的跨浏览器兼容性(高版本使用HTML5 ...

  9. js生成二维码的jquery组件–qrcode

    js生成二维码的jquery组件–qrcode 2015/01/30 / 2508 VIEWS / JAVASCRIPT, JQUERY 有一些耗cpu的计算,完全可以在客户端上计算,比如生成二维码. ...

随机推荐

  1. iOS多线程主题

    下面是:2个并发进程.和2个并发线程的示意图: 下面介绍三种多线程技术(Thread.Cocoa Operation.Grand Central Dispatch): 1.最轻量级Thread(需要自 ...

  2. [LeetCode] Ones and Zeroes 一和零

    In the computer world, use restricted resource you have to generate maximum benefit is what we alway ...

  3. [LeetCode] Kth Smallest Element in a Sorted Matrix 有序矩阵中第K小的元素

    Given a n x n matrix where each of the rows and columns are sorted in ascending order, find the kth ...

  4. github.com使用方法

    github.com作为一个开源的代码托管平台,非常适合创建自己的代码库,也适合从别人已有项目fork自己的私有库:如果想私有托管,需要缴费使用. 创建自己代码库 在个人主页面,点击右上角+号,选择N ...

  5. 用vue.js学习es6(五):set和map的使用

    一:Set用法: ES6提供了新的数据结构Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. (1).打印:console.log var data = new Set([1,2,3]); ...

  6. 协程--gevent模块(单线程高并发)

    先恶补一下知识点,上节回顾 上下文切换:当CPU从执行一个线程切换到执行另外一个线程的时候,它需要先存储当前线程的本地的数据,程序指针等,然后载入另一个线程的本地数据,程序指针等,最后才开始执行.这种 ...

  7. Linux用户管理(centos)

    useradd testuser; 添加用户 testuser为用户名 passwd testuser; 修改用户密码 提示两次输入密码   赋予root权限 修改 /etc/sudoers 文件,找 ...

  8. Docker对于部署来说及其重要

    目前的IT环境发生了很大的变化,有big server到vm server到docker,一步步的敏捷快速,更加合理的利用硬件资源,分离不同环境带来的问题,简化部署. 2016过年的这几天就自学了一下 ...

  9. Newtonsoft.Json 序列化和反序列化 时间格式【转】

    1.JSON序列化 string JsonStr= JsonConvert.SerializeObject(Entity); eg:   A a=new A(); a.Name="Elain ...

  10. OBS-Studio二次开发记录

    OBS-Studio 是一款跨平台的,开源的视频直播客户端软件. 公司需要对他进行二次开发,开发的目的是使用它的录屏功能. 开发的要求是:定制全新的界面,所见即所得,window系统兼容要好. 开发步 ...