js日常知识点总结

JS日常知识点总结


前言

本篇文章主要是总结了,js常用以及必要的知识点。


一、js函数动态传递参数的方法

1、在某些场景下需要封装一个公共的方法,在方法内部实现公共的处理。
例如:页面中有很多地方需要清除定时器。
封装思路:可以通过传递对应的参数标识,在方法内部清除对应参数标识的定时器。

clearTimer(...clearType) {
    
    
	for (let i= 0; i < clearType.length; i++) {
    
    
		if (clearType[i] === 'timer1') {
    
    
			clearInterval(this.orderTimer)
			this.orderTimer = null
		} else if (clearType[i] === 'timer2') {
    
    
			clearInterval(this.timerResult)
			this.timerResult = null
		} else {
    
    
			clearInterval(this.timer)
			this.timer = null
		}
	}
}
clearTime('timer1','timer2')

通过解构的方式传递参数可以同时传递多个参数。传递到函数内部多个参数会以数组的形式保存。通过遍历的方式,实现清除对应的定时器。同时穿的参数是没有固定位置的限制的。

二、JS动态传递参数方法2

1、通过js函数体内部的arguments对象来接收传递进来的惨呼,利用这一对象属性可以的那个太传参。

function he() {
    
    
    let sum = 0;
    for(let i = 0;i < arguments.length; i++) {
    
    
        sum = sum + arguments[i];
    }
    return sum;
}
he(1,2,3);

这里可以看到虽然arguments是对象类型,但是它可以数组索引方式取到对应元素,并且遍历

三、如何判断一个对象中是否包含某个属性

1、最基本的方法就是通过对象最原本的特点:
如果对象中没有某个属性就会返回undefined
可以通过直接取值的方式来判断存不存在某个属性

let obj = {
    
    a:1,b:2}
obj.c    //返回undefined
但是需要注意的是,如果key对应的value就是undefined的话那么返回的结果也就是undefined

2、通过in


let obj = {
    
    a:1};
'a' in obj;             // true
'b' in obj;             // false

3、最直接的方法,还是得用object提供的方法,hasOwnProperty()

let obj = {
    
    a:1,b:2};
obj.hasOwnProperty('a');  

四、js中对URI解码和编码的方法

1、定义和用法
decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码。
使用 encodeURIComponent() 方法可以对 URI 进行编码。

2、参数
uri 必需。一个字符串,含有编码 URI 组件或其他要解码的文本。
3、例如:

let test1="http://www.baidu.com/123/"
document.write(encodeURIComponent(test1))
document.write(decodeURIComponent(test1))
输出:
http%3A%2F%2Fwww.baidu.com%2F123%2F
http://www.baidu.com/123/

五、字符串强制转换坑

在使用!!""转换字符串的时候,不会像number类型的10会转换成truefalse,而是只要字符串不为空的时候就会转换为true。

六、。。。持续更新

总结

如果有问题,请及时指出,必定虚心接收改正。。。互相进步学习

猜你喜欢

转载自blog.csdn.net/qq_43205326/article/details/118372545