19js学习第六天数组第1部分
// 01JavaScript数组对象
// 数的组合
// 使用单独的变量命储存一系列的值,一个容器储存多个元素。
// 单独声明变量 储存数据
var name1 = "唐僧";
var name2 = "孙悟空";
var name3 = "猪悟能";
var name4 = "沙悟净";
// 使用数组将 一系列的值进行储存
var aNames = ["唐僧", "孙悟空", "猪悟能", "沙悟净"];
var bai1 = {
name: "白龙马1",
prop: "蹄朝西"
}
var bai2 = {
name: "白龙马2",
prop: "蹄朝西"
}
var bai3 = {
name: "白龙马3",
prop: "蹄朝西"
}
var aBais = [{
name: "白龙马1",
prop: "蹄朝西"
}, {
name: "白龙马2",
prop: "蹄朝西"
}, {
name: "白龙马3",
prop: "蹄朝西"
}
]
// 02JavaScript数组的创建
// 1.字面量 []
var arr=[1,2,3,4,5,6,7];
console.log(arr);
// 2.常规方式 构造函数 new关键字
var arr2=new Array();
// 添加数组项/元素
arr2[0]="A";
arr2[1]="B";
arr2[2]="C";
console.log(arr2);
// 3.简写
var arr3=new Array("唐僧","孙悟空","猪悟能","沙悟净");
console.log(arr3);
// 注意: 数组项为数字,且只有一个数组项 代表是数组项的个数
var arr4=new Array(5);
console.log(arr4);
// 03JavaScript数组的访问
var arr3=new Array("唐僧","孙悟空","猪悟能","沙悟净");
console.log(arr3);
// 通过索引进行访问
// 索引:由0开始的整数 所有的数组都有索引
console.log(arr3[0]);
console.log(arr3[1]);
console.log(arr3[2]);
console.log(arr3[3]);
console.log(typeof arr3);
// for循环 遍历数组的项
for(var i=0;i<4;i++){
console.log(arr3[i])
}
var person={
name:"张三"
}
console.log(person["name"]);
// 04JavaScript数组添加项
var arr3=new Array("唐僧","孙悟空","猪悟能","沙悟净");
console.log(arr3);
// 通过索引 添加数组项
arr3[4]="白龙马";
arr3[5]="白龙马";
arr3[6]="白龙马";
arr3[1]="六耳猕猴";
arr3[10]="曹帅";
console.log(arr3);
// 05JavaScript数组的属性
var arr=new Array("唐僧","孙悟空","猪悟能","沙悟净");
var arr2=["唐僧","孙悟空","猪悟能","沙悟净","白龙马"];
console.log(arr);
console.log(arr2);
// - length:设置或返回数组元素的个数
// 获取 length比数组最大索引+1
console.log(arr.length);//4
console.log(arr2.length);//5
// 设置 长度
arr.length=10;
console.log(arr);// 长度超过了原数组的长度 超出元素为undefined
arr2.length=3;
console.log(arr2);// 长度小于原数组的常速 删除超出部分的元素
// var arr3=new Array();
// arr3.length=10;
for(var i=0;i<arr.length;i++){
console.log(arr[i])
}
// - constructor:返回创建数组对象的原型函数
// 通过 哪个函数 构造传来的 返回哪个函数
console.log(arr.constructor);
console.log(arr2.constructor);
// - prototype:允许向数组对象(Array)添加属性或方法
Array.prototype.name="数组";
var arrx=new Array();
console.log(arrx.name);
console.log(Array.prototype);
// 06JavaScript数组的方法
var arr1=[1,2,3];
var arr2=[4,5,6];
var arr3=["A","B","C","D","E","F","G"];
// 数组的方法, **方法的作用 方法返回的结果**
// concat() 连接两个或更多的数组,并返回结果。
console.log(arr1.concat(arr2,arr3));//返回新数组
console.log(arr1);//原数组不变
// 删除和添加
// pop() 删除数组的最后一个元素并返回删除的元素。
console.log(arr1.pop());//返回被删除的元素
console.log(arr1);//[1, 2] 改变原数组
// push() 向数组的末尾添加一个或更多元素,并返回新的长度。
console.log(arr1.push(3));//3
console.log(arr1.push(10,20,30));//6 新数组的长度
console.log(arr1);// 改变原数组
// shift() 删除并返回数组的第一个元素。
console.log(arr1.shift());//1
console.log(arr1);// 改变原数组
// unshift() 向数组的开头添加一个或更多元素,并返回新的长度。
console.log(arr1.unshift(1,0));// 7
console.log(arr1);// 改变原数组
// slice(开始的索引,结束的索引) 选取数组的一部分,并返回一个新数组。
// 留头不留尾
console.log(arr1.slice(0,4));// 截取数组
console.log(arr1);// 原数组不变
// splice(开始的索引,截取的长度,添加的元素) 从数组中添加或删除元素。
// console.log(arr1.splice(1,4));// 删除
console.log(arr1.splice(1,0,"A","B","C",10,20,30));// 添加
console.log(arr1);// 改变原数组
// 搜索数组项的位置
// indexOf(被搜索的元素) 搜索数组中的元素,并返回它第一次出现的位置。
console.log(arr1.indexOf(1));//0
console.log(arr1.indexOf("A"));//1
console.log(arr1.indexOf(30));//6
console.log(arr1.indexOf("W"));// -1 找不到被检索的元素 返回-1
// if(arr1.indexOf("W")===-1){
// console.log("W不存在")
// }
// lastIndexOf() 搜索数组中的元素,并返回它最后出现的位置。
console.log(arr1.lastIndexOf(30));//12
console.log(arr1.lastIndexOf("X"));//-1
// join() 把数组的所有元素放入一个字符串。 数组转为字符串
console.log(arr2.join());
console.log(arr2);// 不改变原数组
// split(转换的标识符) 将字符串转换为数组 字符串的方法
var str="hello"
console.log(str.split(""));
// reverse() 反转数组的元素顺序。
console.log(arr3.reverse());
console.log(arr3);// 改变原数组
// 反转字符串 好你
// 反转字符串 你好 --> 好你
var str = "你好";
// 字符串转换为数组
console.log(str.split("").reverse().join(""))
// toString() 把数组转换为字符串,并返回结果
console.log(arr3.toString())
// valueOf() 返回数组对象的原始值。
console.log(arr3.valueOf());
// isArray() 判断对象是否为数组
var str="";
console.log(Array.isArray(str))
// 淘宝商城 --> 各种商品 --> 商品信息是储存在数据中(图片,价格,标题,库存...)
// 一件商品
var product = {
title: "原装正品无线蓝牙耳机",
imgSrc: "https://img.alicdn.com/imgextra/i3/2208306095661/O1CN01Sn9V5b1rgmsGgpK7c_!!2208306095661.png_60x60q90.jpg",
price: "43.80-53.80",
count: 888
}
// 多件商品
var products = [{
title: "原装正品无线蓝牙耳机",
imgSrc: "https://img.alicdn.com/imgextra/i3/2208306095661/O1CN01Sn9V5b1rgmsGgpK7c_!!2208306095661.png_60x60q90.jpg",
price: "43.80-53.80",
count: 888
}, {
title: "原装正品无线蓝牙耳机",
imgSrc: "https://img.alicdn.com/imgextra/i3/2208306095661/O1CN01Sn9V5b1rgmsGgpK7c_!!2208306095661.png_60x60q90.jpg",
price: "43.80-53.80",
count: 888
}, {
title: "原装正品无线蓝牙耳机",
imgSrc: "https://img.alicdn.com/imgextra/i3/2208306095661/O1CN01Sn9V5b1rgmsGgpK7c_!!2208306095661.png_60x60q90.jpg",
price: "43.80-53.80",
count: 888
}, {
title: "原装正品无线蓝牙耳机",
imgSrc: "https://img.alicdn.com/imgextra/i3/2208306095661/O1CN01Sn9V5b1rgmsGgpK7c_!!2208306095661.png_60x60q90.jpg",
price: "43.80-53.80",
count: 888
}]
19js学习第六天数组第1部分相关推荐
- Vue 学习 第六天学习笔记
Vue 学习 第六天学习笔记 1.webpack 使用复习 第一步:先建立文件夹. 第二步,用webpack将其初始化,建立管理.npm 的包管理工具管理起来, npm init -y .注意{查 ...
- c语言中void arrout,c语言学习笔记(数组、函数
<c语言学习笔记(数组.函数>由会员分享,可在线阅读,更多相关<c语言学习笔记(数组.函数(53页珍藏版)>请在人人文库网上搜索. 1.数组2010-3-29 22:40一维数 ...
- python count函数用法 comm_Python学习第六天课后练习案例 (主要针对的内容是python函数的定义和使用)...
Python学习第六天课后练习案例 2019.07.19 1.定义一个函数,该函数可以实现在内部输入一个信息,如果该信息不能转换为正整数,则重新输入,直到能转换为正整数,则对外返回转换的正整数 程序代 ...
- [ 转载 ] Java基础12--基础学习总结——数组
java基础学习总结--数组 一.数组的基本概念 数组可以看成是多个相同类型数据组合,对这些数据的统一管理. 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量. 数组的 ...
- python类的数组属性_Python学习之数组类型一:
Python学习之数组类型一: Numpy中的向量与矩阵: 1.创建: 向量.矩阵均由array函数创建,区别在于向量是v=array( [逗号分隔的元素] ), 矩阵是M=array( [[ ]] ...
- 【PHP学习】—数组的定义和遍历(三)
[PHP学习]-数组的定义和遍历(三) 一.常见的数组定义方式 二.遍历数组 三.二维数组 四.数组传递给页面 数组转json格式(一维数组) 五.数组传递给页面 数组转json格式(二维数组)
- java数组元素的排序_java学习之数组元素排序,冒泡排序和选择排序
java学习之数组元素排序 选择排序 *返回值类型 void *参数列表 int[] arr * 分析:选择排序 * 第一次arr[0]与arr[1-4]比较,总共比较4次 * 第二次arr[1]与a ...
- Go语言学习笔记-数组、切片、map
Go语言学习笔记-数组.切片.map 数组:同一数据类型元素的集合.是值类型,长度固定无法修改 声明格式:var 数组名字 [元素数量] 数据类型 var arr [3] int //声明定义了一个长 ...
- Python学习.第六天.字典
Python学习.第六天.字典 前言 一.什么是字典? 二.字典的原理 三.字典的创建与删除 四.字典的查询操作 五.字典元素的增.删.改操作 1.key的判断: 2.字典元素的删除 3.字典元素的新 ...
最新文章
- 27.	代码实例-spring声明式事务
- 一致吗 驱动_外国不过春节?AMD驱动再更新,解决BUG,游戏不闪退,重启不黑屏...
- Error querying database. Cause: java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符
- linux atom 升级,Github更新Atom,主要集中在Windows
- 节后如何快速进入工作状态
- 腾讯云大数据产品中心总经理刘煜宏:企业全域数据体系建设(附完整PPT)
- 关于如何使用的MSCS(微软群集服务器)中的iSCSI Guest Initiators (客户机启动器)...
- js跨域 ajax跨域问题解决
- 单元测试框架之Robolectric踩坑
- Spring : Spring kafka 入门Demo
- julia有 pytorch包吗_PyTorch 有哪些坑/bug?
- [Ubuntu] 安装百度网盘客户端
- 1129 - 喵哈哈村的战斗魔法师丶坏坏い月 线段树
- 天平游码读数例题_使用天平游码时的读数方法
- 使用vs2010生成64位的dll文件
- NOI2018 游记
- 网优到底是干什么的?
- 连接mysql所必须参数_数据库连接参数使用方法详解
- 移动端实现拖曳核心思想
- Kubernetes — CNI 网络插件规范
热门文章
- 苹果手机应用分身_G胖串流应用上架App Store,苹果手机能玩电脑游戏了
- linux3.5 usb键盘,CRUX 3.5发布下载,一款轻量级且为i686优化的Linux发行版
- 西门子S7-1500PLC大型程序,各种FB块PTO控制20多个轴
- 网页颜色搭配技巧nbsp;文字字体、字号…
- 计算机网络历年试题分析(大题待补充)
- 【论文翻译】Fully Convolutional Networks for Semantic Segmentation
- 千名德国基尔居民测试疫情警报手环
- 从来不作死只玩命的10年黑客
- Lawliet|Python学习笔记——turtle库
- Android 高仿微信头像截取 打造不一样的自定义控件