JS常见的一些简单题型
// 用户随机输入两个数,作为函数的两个形参,并求出两个数之间所有数的和
let readline = require("readline-sync");
console.log("请输入第一个数:");
let a = parseInt(readline.question(""));
console.log("请输入第二个数:");
let b = parseInt(readline.question(""));
function test(a,b){
let temp;
if(a>b){
temp=a;
a=b;
b=temp;
}
let sum = 0;//用来求和
for( let i = a;i <= b;i++){
sum +=i;
}
return sum;
}
console.log("和为:",test(a,b));
// 用户定义数组的长度,然后手动输入一个数组,
// 针对这个数组求最大值和最小值,要求封装成一个函数
let readline = require("readline-sync");
console.log("请输入数组的长度:");
let lenght = parseInt(readline.question(""));
let arr = [];
let i,j;
for(i =0;i<lenght;i++){
console.log(`请输入第${i+1}个数`);
let num = parseInt(readline.question(""));
arr[i] = num;
}
function test(now,func){
let str = [];
for(i =0;i<arr.length;i++){
str[i] = arr[i]
}
console.log(str.sort(function(a,b){
return a-b;//升序
}));
switch(func){
case 1:
return str[0]; //找最小值数组的下标为0,就是第一个元素
break;
case 2:
return str[str.length-1];//找最大值数组的下标就是数组的长度-1,就是最后一位元素,
break;
}
}
console.log("该数组最小值为:",test(arr,1));
console.log("该数组最大值为:",test(arr,2));
console.log("该数组是:",arr);
// 对这个对象数组进行排序,首先按照年龄来排序,如果年龄相同,分数低的排在前面,
// 如果分数也相同,则学号低的排在前面
let i = [ {id:1,name:'张三',age:20,score:87}, {id:2,name:'李四',age:18,score:77}, {id:3,name:'王五',age:23,score:65}, {id:4,name:'赵六',age:25,score:87}, {id:5,name:'田七',age:27,score:82}, {id:6,name:'王八',age:21,score:74}, {id:7,name:'小明',age:19,score:91}, {id:8,name:'小红',age:28,score:92}, {id:9,name:'小李',age:20,score:78}, {id:10,name:'牛牛',age:18,score:87}, {id:11,name:'妞妞',age:23,score:65}, {id:12,name:'六九',age:20,score:82}, ]; i.sort(function(a,b){ if(a.age == b.age){ if(a.score == b.score){ return a.id - b.id; } else{ return a.score - b.score; } } else{ return a.age - b.age; } }); console.log(i);
// 用户随机输入一段英文语句,求出有多少单词及单词数量
let readline = require("readline-sync");
console.log("请输入英文语句:");
let str = readline.question("");
console.log("你的单词个数为:",word(str));
function word(word){
let arr = word.split(" ");
console.log(arr);
let n = 0;
for(let i = 0;i<arr.length;i++){
if(arr[i] != ""){
n++;
}
}
return n;
}
// 用户输入一段英文,找出该段英文中 最长单词 是什么
let readline = require("readline-sync");
console.log("请输入英文语句:");
let str = readline.question("");
function longword(str){
let arr =str.split(" ");
let max = arr[0].length;
for(let i = 1;i<arr.length;i++){
if(arr[i].length > max){
max = arr[i].length;
}
}
let arr1 = [];
for(let j =0;j<arr.length;j++){
if(arr[j].length == max){
arr1.push(arr[j]);
}
}
return arr1;
}
console.log(longword(str));
// 钱币格式转换函数,
// 一串数字,转换为带有逗号分隔符的形式
// 例如:12345678 12,345,678 从后面开始每三位以一个逗号隔开
let num = "1234566789900987654432321"; function change(num){ let str = ""; for(let i = num.length-1;i>=0;i--){ str +=num[num.length-1-i]; if(i%3==0 && i !=0){ str+=","; } } return str; } console.log(change(num));

浙公网安备 33010602011771号