Js实现复杂计算和简单运算,以及函数传递任意多个参数的参数的方法

1.实现复杂运算可以通过调用eval()方法进行计算,获取结果

// 使用eval(string)方法,内部对象是string
let a=eval("1*2-8+6+2/1");
console.log(a);

//或者写成
var string="1*2-8+6+2/1"
let a=eval(string);
console.log(a);

实现结果如下:

2.实现函数传递任意多个参数的方法

(1)直接在函数定义括号内传递需要传递的参数

(2) 可通过arguments对象实现定义函数的多个动态参数的传递
arguments 是一个对应于传递给函数的参数的类数组对象。有索引index长度length属性 

举例:

// 加法方法的定义,使用arguments传递多个参数
function add(){
	let result=0;
	for(let i=0;i<arguments.length;i++){
		if(arguments.length>1){
			result+=Number(arguments[i]);
		}
	}
	return result;
};

console.log(add(1,2,3,4,5));

结果如下:

3.定义简单的加减乘除的基本代码(可实现多个数进行计算)


// 加法
function add(){
	let result=0;
	for(let i=0;i<arguments.length;i++){
		if(arguments.length>1){
			result+=Number(arguments[i]);
		}
	}
	return result;
};
// 显示结果
console.log(add(1,2,3,4,5));

// 减法
function sub(){
	let result=arguments[0];
	for(let i=1;i<arguments.length;i++){
		if(arguments.length>1){
			result-=Number(arguments[i]);
		}
	}
	return result;
};
console.log(sub(100,20,10,5));

// 乘法
function mul(){
	let result=arguments[0];
	for(let i=1;i<arguments.length;i++){
		if(arguments.length>1){
			result*=Number(arguments[i]);
			if(result==0)break;
		}
	}
	return result;
};
console.log(mul(1,2,3,4));

// 除法
function div(){
	let result=arguments[0];
	for(let i=1;i<arguments.length;i++){
		if(arguments.length>1){
			if(arguments[i]==0){
				return result="结果未定义";
			}else result/=Number(arguments[i]);
		}
	}
	return result;
};
console.log(div(12,3,0));

实现效果:

猜你喜欢

转载自blog.csdn.net/NXBBC/article/details/123521663
今日推荐