学好JavaScript,让自己成为前端的猴赛雷大佬! 完

Posted IT_Holmes

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学好JavaScript,让自己成为前端的猴赛雷大佬! 完相关的知识,希望对你有一定的参考价值。

1.javascript对象

1.字面量声明对象
var obj1 = {};

2.对象中的数据都是键值成对存在
通常来说,值是函数则成为方法,其他类型的值都是属性。
var obj2 = {
age:12,
height:195,
name:‘张三’,
sex:function(){
}

};

3.实例化方式 声明对象(内置构造函数)
var obj2 = new Object();

4.自定义构造函数方式
function fun(){

}
var f = new fun(); //实例化自定义构造函数方式

以下两个获取对象属性或者方法的例子:
在这里插入图片描述
在这里插入图片描述

2.this

1.指向对象中的this

直接举个例子:

var obj1 = {
	age:18,
	name:'老铁',
	fun:function(){
		// 在方法中的this就是这个方法所在的对象
		var s = this.age;
	}
	
}

实际上this指向的就是obj1这个对象。
也就是说上面的this.age就等于obj1.age
只不过this替换了obj1这个对象。

2.指向全局对象的this

在一个普通的函数种也是有this的,并且这个this指向的是全局对象(window)。

function f(){
	console.log(this);//这里可以直接打印出来运行一下。
}

3.this的指向

直接上例子:

k = '678';
function fun(){
	console.log(this.k);
}
var o1 = {
		k:'123',
		f:fun,   //调用fun()函数
}
var o2 = {
		k:'345',
		f:fun,    //调用fun()函数
}
o1.f();
o2.f();

这里的this,就非常灵性,指向的自然是相对应的k值,this运行在那个对象下,就指向那个对象

注意函数是否带括号!!!

函数带括号的相当于调用函数
var o1 = {
age:18,
fun:function () {
console.log(this.age);
}
}
var o2 = {
age:16,
fun:o1.fun(),
}
o2.fun();
上面得到的结构就是18,因为这是调用完成后的结果。

没有带括号的函数:
var o1 = {
age:18,
fun:function () {
console.log(this.age);
}
}
var o2 = {
age:16,
fun:o1.fun, //只是把o1的键值对中的值,给传递过来了。
}
o2.fun();
这里没有带括号,结果就是16,因为fun函数没有被调用执行。
这里的fun:o1.fun就等于
fun:function () {
console.log(this.age);
}
只是把键值对中的值转递过来了,并没有调用。

4.对象的遍历和删除

遍历语法格式:

for … in
for(键 in 对象)
for
例如:

var o1 = {
	name:'老铁',
	age:18,
	sex:'female'
}
for(var a in o1){
		console.log(o1[k]);
}

for … in … 循环不仅可以遍历对象,还可以遍历数组。

删除属性语法格式:

删除属性:delete
例如:

var o1 = {
	name:'老铁',
	age:18,
	sex:'female'
}
console.log(o1);  //先看一眼内容
delete o1.age;
console.log(o1);  //这时里面应该没有了age属性。

5.包装对象

这里介绍以下三种原始类型:
数值,字符串,布尔
原始类型的数据在一定条件下可以自动转为对象,这就是包装对象。

例如:

	var v1 = new Number(123);
	console.log(v1);

上面的结果就是Number {123}。

原始值,可以自动当作对象来调用,因此可以调用各种属性以及方法。
如果包装对象使用完成,会自动立即销毁。

例如:

var str = '123';
console.log(str.length);

6.数学对象(标准库对象,内置对象)

这里记录几个很常用的:

Math.abs() // 函数取绝对值

Math.random() //函数返回一个浮点数,范围在[0,1)之间。
公式:取2到8之间的数字
Math.random()*( 8 - 2 ) + 2
获取 n - m 之间的随机数值
Math.random() * (m - n) + n
往后取特定的范围都这样取值!!!

Math.floor() //返回小于或等于一个给定数字的最大整数。

7.日期对象

实例化构造函数获取时间对象

这里显示的是中国标准时间
var date = new Date();
console.log(date);

这里显示的是毫秒
var date2 = Date.now();
console.log(date2);

获取特a定的年月日小时等
var date3 = new Date();
console.log(date3.getDetHours()); //获取当前小时
console.log(date3.getDate()); //获取当前日
console.log(date3.getFullYear); //获取年份
console.log(date3.getMonth() + 1); //获取月份
这里强调一下,JS中月份的数组是从0开始的,所以要+1。
JS中获取的时间是计算机本地时间。

8.数组Array对象

使用push()方法向数组里面最后一个添加元素:

var arr = [1,2,3,4,5,6,7];
var s = 8;
arr.push(s);
console.log(arr);

使用pop()方法删除最后一个元素:

var arr = [1,2,3,4,5,6,7];
arr.pop();
console.log(arr);

使用slice()方法,由begin和end(不包括end),这里只是提取了一部分,原数组不变:

var arr = [1,2,3,4,5,6,7];
console.log(arr.slice(2,4));
console.log(arr);

使用concat()方法,来合并数组:

var arr = [1,2,3,4,5,6,7];
var arr2 = ['A','B','C'];
var arr3 = arr.concat(arr2);
console.log(arr);
console.log(arr3);

使用join()方法和分隔符来将所有数组中的元素连接成字符串:

var s = arr.join();
console.log(s);
这里显示的字符串,中间会参杂“ ,”,因此需要分隔符的帮助。
例如:
没有分隔符号:
var s = arr.join('');
console.log(s);
分隔符为‘ - ’:
var s = arr.join('-');
console.log(s);

使用forEach()方法对数组的每一元素执行一次提供的函数。

9.字符串对象

举例学一些常用的:

indexOf()方法来查找相应的字符或字符串第一次出现的位置:

var s = 'wasdfsdfsdf';
var arr = s.indexOf('d');
console.log(arr);

substr(start , Length)方法返回一个字符串中从指定位置开始到指定字符数的字符。

var s = 'wasdfsdfsdf';
var arr = s.substr(2,5);
console.log(arr);

上面就是从索引为2的位置开始的后5位。

toLowerCase()方法,将所有字符转换为小写。
toUpperCase()方法,将所有字符转换为大写。

var s = "Hello,World"
var arr = s.toLowerCase();
console.log(arr);

replace(‘被替换’ , ‘要替换’)方法,替换字符或字符串。

trim()方法会从一个字符串的两端删除空白字符。

JS完结

以下是一个查询JS的一些相关内函数和语句的网站,可以看看:

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript

以上是关于学好JavaScript,让自己成为前端的猴赛雷大佬! 完的主要内容,如果未能解决你的问题,请参考以下文章

学好JavaScript,让自己成为前端的猴赛雷大佬!

学好JavaScript,让自己成为前端的猴赛雷大佬!

学好JavaScript,让自己成为前端的猴赛雷大佬!

零基础如何快速学好大数据?

零基础如何快速学好大数据?

无插件猴赛雷!SuperMap iClient3D for WebGL的4大“网红 ”潜质