javascript 第四篇/第五篇(入门篇)
来源:互联网 发布:朱雀网络和小米的关系 编辑:程序博客网 时间:2024/06/02 12:34
javascript 第四篇
目录2
第1章对象和面向对象2
1.1JS中的对象(Object)2
1.1.1创建空白对象2
1.1.2对象就是一个盒子,盒子里面可以放属性和方法。3
1.2构造函数3
1.3创建自定义对象3
1.3.1new3
1.3.2This3
第1章 对象和面向对象
1.1 JS中的对象(Object)
1.1.1 创建空白对象
var obj = new Object();
1.2 构造函数(就是为了创建对象实例)
一、可以创建对象实例的函数。
二、区别与普通函数,首字母大写。
1.3 创建自定义对象
1.3.1 This
一、this只出现在函数中。
二、谁调用函数,this就指的是谁。
三、new People(); People中的this代指被创建的对象实例。
1.3.2 new
1.开辟内存空间,存储新创建的对象(new Object() )
2.把this设置为当前对象
3.执行内部代码,设置对象属性和方法
4.返回新创建的对象
十进制的值 =位值*进制(位数-1)+位值*进制(位数-1)+位值*进制(位数-1)............
javascript 第五篇
目录
目录2
第1章 对象和面向对象
1.1 对象字面量个JSON
var obj = {aaa: 111};var json = {“aaa”:111};
对象字面量定义方法和json很像,只有一点不同,json的key要求必须加“”;
1.2 Json组成
Var json = {“aaa”: 1,“bbb”: 2,“ccc”: 3,“ddd”: 4}
Json由{}和key:value以及逗号组成,三部分。(只有一个键值对key:value时,可以没有逗号)
1.3 For...in...
Var json = {“aaa”: 1,“bbb”: 2,“ccc”: 3,“ddd”: 4}
for(var key in json){
//key代表aaa,bbb.....等
//json[key]代表1,2,3....等
}
1.4 参数和传值问题
一、简单类型数据做参数,函数内部对参数的修改不应影响外部变量
简单类型传数值。
二、复杂类型数据做参数,函数内部对参数的修改会应影响外部变量
复杂类型传地址。
第2章 数组高级API
2.1 学习API的方法
2.1.1 侧重点(四点)
调用者:谁调用的。参数:有无,几个。
返回值:有无,什么类型。功能:干什么用的。
2.1.2 自学方法
一、离线
a) 离线文档(讲师发)
二、在线
a) W3C(前端标准W3CSchool)
b) MDN (开发者网站)https://developer.mozilla.org/zh-CN/
c) 百度/谷歌/搜狗。。。
2.2 Array的内置方法
2.2.1 判断数组和转换数组。
Instanceof: 是一个关键字。判断A是否是B类型。
布尔类型值 = A Instanceof B ;
Array.isArray()//HTML5中新增 判断是不是数组
布尔类型值 = Array.isArray(变量) ;
调用者:Array参数:变量(被检测值)返回值:布尔类型
toString()//把数组转换成字符串,每一项用,分割
字符串 = 数组.toString();
valueOf()//返回数组对象本身
数组本身 = 数组.valueOf();
Join//根据每个字符把数组元素连起来变成字符串
字符串 = 数组.join(变量);
变量可以有可以没有。不写默认用逗号分隔,无缝连接用空字符串。
2.2.2 数组增删和换位置(原数组被修改)
push() //在数组最后面插入项,返回数组的长度
数组1改后的长度 = 数组1.push(元素1);
pop() //取出数组中的最后一项,返回最后一项
被删除的元素 = 数组1.pop();
unshift() //在数组最前面插入项,返回数组的长度
数组1改后的长度 = 数组1.unshift(元素1);
shift() //取出数组中的第一个元素,返回最后一项
被删除的元素 = 数组1.shift();
reverse()//翻转数组(原数组讲呗反转,返回值也是被反转后的数组)
反转后的数组 = 数组1.reverse();
sort(); //给数组排序,返回排序后的数组。如何排序看参数。
从小到大排序后的数组 = 数组1.sort(function(a,b){
return a-b;
});
无参:按照数组元素的首字符对应的Unicode编码值从小到大排列数组元素。
带参:必须为函数(回调函数--callback)。函数中带有两个参数,代表数组中的前后元素。如果计算后(a-b),返回值为负数,a排b前面。等于0不动。返回值为正数,a排b后面。
2.2.3 了解方法
concat() //把参数拼接到当前数组
新数组 = 数组1.concat(数组2);
slice() //从当前数组中截取一个新的数组,不影响原来的数组,参数start从0开始,end从1开始
新数组 = 数组1.slice(索引1,索引2);
splice()//删除或替换当前数组的某些项目,参数start,deleteCount,options(要替换的项目)
新数组 = 数组1.splice(起始索引,结束索引,替换内容);
indexOf()、lastIndexOf() //如果没找到返回-1
索引值 = 数组.indexOf/lastIndexOf(数组中的元素);
迭代方法不会修改原数组
every()、filter()、forEach()、map()、some()
数组/boolean/无 = 数组.every/filter/forEach/map/some(
function(element,index,arr){
程序和返回值;
}
);
//对数组中每一项运行以下函数,如果都返回true,every返回true,如果有一项返回false,则停止遍历every返回false;不写默认返回false
array.every(function(item,index,arr) {
})
//对数组中每一项运行以下函数,该函数返回结果是true的项组成的新数组
var arr = array.filter(function(item,index,arr) {
});
console.log(arr);
//遍历数组
array.forEach(function(item,index,arr){
});
//对数组中每一项运行以下函数,返回该函数的结果组成的新数组
var arr = array.map(function(item,index,arr) {
return "\"" + item + "\"";
})
//对数组中每一项运行以下函数,如果该函数对某一项返回true,则some返回true
var b = array.some(function(item,index,arr) {
if (item == "ww") {
return true;
}
return false;
});
2.2.4 清空数组
var array = [1,2,3,4,5,6];
array.splice(0,array.length); //删除数组中所有项目
array.length = 0; //length属性可以赋值,其它语言中length是只读
array = []; //推荐
2.2.5 练习
1.将一个字符串数组输出为|分割的形式,比如“刘备|张飞|关羽”。使用两种方式实现
2.将一个字符串数组的元素的顺序进行反转。["a","b","c","d"]à["d","c","b","a"]。使用两种种方式实现。提示:第i个和第length-i-1个进行交换
3.找到数组中每个字母出现的次数["c","a","z","a","a"]
4.工资的数组[1500,1200,2000,2100,1800],把工资超过2000的删除
2.3 Date/Math/简单数据类型(略)
2.3.1 构造函数的原理
function Num(aaa){
this["[[PrimitiveValue]]"] = num/1;
return aaa/1;
}
- javascript 第四篇/第五篇(入门篇)
- javascript入门基础篇重点 第四节
- webpack入门第五篇
- webpack入门第四篇
- 第五篇 QML编程入门
- AOP快速入门(第五篇)
- 安卓入门第四篇
- Vue.js入门第四篇
- Android入门第五篇之TableLayout (二)
- Android入门第五篇之TableLayout (二)
- Android入门第五篇之TableLayout (二)
- Android入门第五篇之TableLayout (二)
- Android入门第五篇之TableLayout (二) .
- 【OpenCV入门指南】第五篇 轮廓检测
- Android入门第五篇之TableLayout (二)
- 【OpenCV入门指南】第五篇 轮廓检测
- SpringBoot入门系列:第五篇 JPA mysql
- SpringBoot入门系列:第五篇 JPA mysql
- C++ 内存模型和名称空间
- 静态编译qt4.8
- pt-online-schema-change使用说明、限制与比较
- log4j:WARN No appenders could be found for logger (org.hibernate.type.BasicTypeRegistry). log4j:WARN
- Mac osx安装Django
- javascript 第四篇/第五篇(入门篇)
- poi实现生成下拉选联动
- mysql数据库下载安装和解决中文乱码问题(吐血总结)
- solr
- 死锁的产生条件及解决方法
- Java集合系列总结
- python remove和del的区别,python 循环删除元素
- clion快键键
- 碉堡问题