JAVAscript从入门到进阶头歌答案
加油兄弟们 ——————给关注个呗---点个赞
JavaScript 学习手册二:JS 数据类型
第1关 JavaScript 数据类型介绍
function objectTest() {
var a = {name:"myName",id:2};
var b = [1,true,2];
var c = 1;
var d = "1";
var e = true;
var f;
var aType,bType,cType,dType,eType,fType;
//请在此处编写代码
/********** Begin **********/
aType ="object";
bType ="array";
cType ="number";
dType ="string";
eType ="bool";
fType ="undefined";
console.log("aType");
console.log("bType");
console.log("cType");
console.log("dType");
console.log("eType");
console.log("fType");
return aType+","+bType+","+cType+","+dType+","+eType+","+fType;
}
第2关 JavaScript 数据类型转换
function mainJs(args1,args2,args3) {
//请在此处编写代码
/********** Begin **********/
var a = parseInt(args1);
var b = parseInt(args2,16);
var c = parseFloat(args3);
/********** End **********/
return a+b+c;
}
JavaScript学习手册三:JS运算符
第1关 算术运算符
function mainJs(a,b) {
//请在此处编写代码
/***********Begin**********/
c = parseInt(a)%parseInt(b);
a = a.toString();
b = b.toString();
c = c.toString();
/*********End************/
return a+b+c;
}
第2关 比较和逻辑运算符
function mainJs(a,b) {
//请在此处编写代码
/********Begin***************/
if(a>b){
console.log(a&&b);
return a&&b;
}
else{
console.log(!a)
return !a;
}
/**********End****************/
}
第3关 条件和赋值运算符
function mainJs(a,b) {
//请在此处编写代码
/*********begin*********/
var result1=a>b?a:b;
return a>b?a:b;
/*********end*********/
}
第4关 运算符的优先级和结合性
function mainJs(a,b) {
var a = parseInt(a);
var b = parseInt(b);
//请在此处编写代码
/*********begin*********/
var c = (a-1+b)*b == 24?1:0;
var d = 4;
var e = c*d+d;
/*********end*********/
return e;
}
JavaScript学习手册四:JS对象
第1关 对象的创建
function Car(plate,owner) {
this.plate = plate;
this.owner = owner;
}
function Job() {};
Job.prototype.company = "myCompany";
Job.prototype.salary = 12000;
function mainJs(a,b,c,d,e) {
//请在此处编写代码
/*********bigin*********/
var student=new Object();
student.name=a;
student.gender=b;
var myCar=new Car(c,d);
var myJob=new Job();
myJob.company=e;
/*********end*********/
return student.name+student.gender+myCar.plate+myCar.owner+myJob.company;
}
第2关 属性的增删改查
var store = {
name:"Luma Restaurant",
location:"No 22,Cot Road",
accountant:"Vivian Xie",
day1:3200,
day2:3200,
day3:3200,
day4:3200,
day5:3200,
day6:3200,
day7:3200,
day8:3200,
day9:3200,
day10:3200
}
function reviseAttribute(reviser,date,attValue) {
//Convert string to integer
attValue = parseInt(attValue);
//请在此处编写代码
/*********begin*********/
store.accountant=reviser;
var ds="day"+date;
store[ds]=attValue;
/*********end*********/
var totalSales = store["day1"]+store["day2"]+store["day3"]+store["day4"]+store["day5"]+store["day6"]+store["day7"]+store["day8"]+store["day9"]+store["day10"];
return totalSales+store.accountant;
}
第3关 属性的检测和枚举
var orange = {
weight:"200g",
color:"orange",
taste:"sour"
};
var car = {
brand:"Jaguar",
price:"$80000",
model:"XFL"
}
function mainJs(a){
//请在此处编写代码
/*********begin*********/
var b="";
if(a in orange){
for(var att in orange){
b=b.concat(att);
}
}
else if(a in car){
for(var att in car){
b=b.concat(att);
}
}
return b;
/*********end*********/
}
JavaScript学习手册五:JS数组
第1关 数组的创建、读写和长度
var array1 = [1,2,3,"js",4,true,"hello"];
var array2 = [true,true,"java",2.1];
function mainJs(a) {
//请在此处编写代码
/*********begin*********/
if(a==array1.length){return array1[array1.length-1];}
else {return array2[array2.length-1];}
/*********end*********/
}
第2关 数组元素的增减
var testArray = [12,"java","js","c","c++",24,36,"python","c#","css"];
function mainJs(a,b) {
a = parseInt(a);
b = parseInt(b);
//请在此处编写代码
/*********begin*********/
for(var i=0;i<a;i++){
testArray.unshift(testArray.pop());
}
return testArray[b];
/*********end*********/
}
第3关 数组的遍历和多维数组
var arr = [1,2,3,4,5,6,7,8,9,0,10,11,12,13,14,15,16,17,18,19,20,21,23,22];
function mainJs(a,b) {
a = parseInt(a);
b = parseInt(b);
//请在此处编写代码
/*********begin*********/
var arr1=new Array(a);
for(var i=0;i<a;i++){
arr1[i]=new Array(b);
}
var count=0;
for(var i=0;i<a;i++){
for(var j=0;j<b;j++){
arr1[i][j]=arr[count++];
}
}
return arr1;
/*********end*********/
}
第4关 数组的常用方法
function mainJs(myArray) {
myArray = myArray.split(",");
//请在此处编写代码
/*********begin*********/
var a=new Array();
var i=0,j=0;
while(myArray.indexOf("a",i)!=-1)
{
a[j]=myArray.indexOf("a",i);
i=a[j]+1;
j++;
}
var b=new Array();
var i1=0,j1=0;
while(myArray.indexOf("b",i1)!=-1)
{
b[j1]=myArray.indexOf("b",i1);
i1=b[j1]+1;
j1++;
}
var d=a.concat(b);
return d;
/*********end*********/
}
第5关 数组的应用——内排序
function mainJs(a) {
var arr = a.split(",");
for(var i = 0;i < arr.length;i++) {
arr[i] = parseInt(arr[i]);
}
//请在此处编写代码
/*********begin*********/
var mi=new Array();
var aLength = arr.length;
var temp;
var max = arr[0];
var maxIndex = 0;
for(var i = 0;i < aLength-1;i++) {//共进行n-1次选择
for(var j = 1;j < aLength-i;j++) {//一次选择
if(arr[j] > max) {
max = arr[j];
maxIndex = j;
}
}
mi[i]=maxIndex;
//将本次选出的最大元素移动到最终的位置上
temp = arr[aLength-i-1];
arr[aLength-i-1] = arr[maxIndex];
arr[maxIndex] = temp;
var max = arr[0];
var maxIndex = 0;
}
return mi;
/*********end*********/
}
JavaScript学习手册六:JS条件语句
第1关 if-else类型
、
function mainJs(a) {
a = parseInt(a);
//请在此处编写代码
/********** Begin **********/
if( a < 60 ){return "unpass"}
else {return "pass"}
/********** End **********/
}
第2关 switch类型
function mainJs(a) {
a = parseInt(a);
//请在此处编写代码
/********** Begin **********/
switch(a){
case 82414: return "Superior" ; break;
case 59600: return "Huron";break;
case 58016: return "Michigan" ;break;
case 25744: return "Erie" ;break;
case 19554: return "Ontario" ; break;
default: return "error";
break;
}
/********** End **********/
}
第3关 综合练习
//判断一个年份是否为闰年
function judgeLeapYear(year) {
//请在此处编写代码
/********** Begin **********/
if(year%100==0){if(year%400==0){return year+"年是闰年";}else{return year+"年不是闰年";} }
else{if(year%4==0){return year+"年是闰年";}else{return year+"年不是闰年";}}
/********** End **********/
}
//对输入进行规范化处理
function normalizeInput(input) {
/********** Begin **********/
switch(input){
case "中共党员":
case "党员":
case "共产党员": return"中共党员";
break;
case "中共预备党员":
case "预备党员": return"中共预备党员";
break;
case "团员":
case "共青团员":return"共青团员";
break;
case "大众":
case "群众":
case "市民":
case "人民":return"群众";
break;
default:return"错误数据";
break;
}
/********** End **********/
}
//判断苹果是否为优质品
function evaluateApple(weight,water) {
/********** Begin **********/
if(weight>=200){
return"是优质品";
}
else if(weight<200&&water>=0.7){
return"是优质品";
}
else {
return"不是优质品";
}
/********** End **********/
}
JavaScript学习手册七:JS循环语句
第1关 while类型
function mainJs(a) {
a = parseInt(a);
//请在此处编写代码
/********** Begin **********/
// 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
a = parseInt(a); //整数
var sum = 0; //用于存储和
var i=2; //从2开始
while(i<=a){ //如果输入的数大于等于2
var j=2;
while(j<i){
if(i%j==0){
break;
}
j++;
}
if(j==i){
sum += i;
}
i++;
}
return sum;
/********** End **********/
}
第2关 do while类型
function mainJs(a,b) {
a = parseInt(a);
b = parseInt(b);
//请在此处编写代码
/********** Begin **********/
var sum=0;
var i=a;
do{
i++;
if(i<b){
sum+=i;
}
}while(i<b);
return sum;
/********** End **********/
}
第3关 for类型
function mainJs(a){
a = parseInt(a);
//请在此处编写代码
/********** Begin **********/
a = a.toString();
var sum=""; //初始化
for(var i=0;i<a.length;i++){
sum += a[a.length-i-1]; //反向拼接字符串
}
return sum;
/********** End **********/
}
第4关 for in类型
var apple = {
weight:"200克",
level:"特级",
locationProvince:"陕西省",
locationCity:"榆林市"
}
function mainJs(a,b){
apple[a]= b;
//请在此处编写代码
/********** Begin **********/
var sum="";
for(var att in apple) {
if(!att.indexOf("location")){
sum+= apple[att];
}
}
return sum;
/********** End **********/
}
第5关 break和continue的区别——break
function mainJs(a) {
var arr = a.split(",");
for(var k = 0,length = arr.length;k < length;k++) {
arr[k] = parseInt(arr[k]);
}
//请在此处编写代码
/********** Begin **********/
for(var k = 0;k < arr.length;k++) {
var x=arr[k];
var num=true;
if(x>1){
for(var j=2;j<x;j++){
if(x%j==0){
num=false;
break;
}
}
if(num){
return x;
}
}
}
/********** End **********/
}
第6关 break和continue的区别——continue
function mainJs(a,b) {
a = a.split(",");
for(var i = 0,length = a.length;i < length;i++) {
a[i] = parseInt(a[i]);
}
var sum = 0;
for(var i = 0,length = a.length;i < length;i++) {
//请在此处编写代码
/********** Begin **********/
if(b>0&&a[i]<0){
continue;
}
if(b<0&&a[i]>0){
continue;
}
/********** End **********/
sum += a[i];
}
return sum;
}
JavaScript学习手册八:JS函数
第1关 用函数语句定义函数
//请在此处编写代码
/********** Begin **********/
function mainJs(a,b) {
return a+b;
}
/********** End **********/
第2关 用表达式定义函数
function mainJs(a) {
a = parseInt(a);
//请在此处编写代码
/********** Begin **********/
function myFunc(i) {
return i%10+parseInt((i%100)/10)+parseInt(i/100);
}
/********** End **********/
return myFunc(a);
}
第3关 函数的调用
//求最大值的函数
function getMax(b,c) {
return b>c?b:c;
}
//求最小值的函数
var getMin = function(b,c) {
return b>c?c:b;
}
//对象中的求和函数
var myObject = {
id:1,
name:"function",
myFunc:function(b,c) {
return b+c;
}
}
function mainJs(a,b,c) {
a = parseInt(a);
b = parseInt(b);
c = parseInt(c);
//请在此处编写代码
/********** Begin **********/
if(a===1){
return getMax(b,c);
}else if(a===2){
return getMin(b,c);
}else if(a===3){
return b+c;
}
/********** End **********/
}
第4关 未定义的实参
function mainJs(a,b,c,d) {
//请在此处编写代码
/********** Begin **********/
if(a===undefined) {
return "green-green-red-yellow";
}else{
if(b===undefined){
return a+"-green-red-yellow";
} if(c===undefined){
return a+"-"+b+"-red-yellow";
}if(d===undefined){
return a+"-"+b+"-"+c+"-yellow";
}
else{
return a+"-"+b+"-"+c+"-"+d;
}
}
return a+b+c+d;
/********** End **********/
}
第5关 实参对象
//请在此处编写代码
/********** Begin **********/
function getMax() {
var aLength = arguments.length;
var sum = 0;
for(var i = 0;i < aLength;i++) {
if(sum<arguments[i])
{
sum=arguments[i];
}
}
return sum;
}
/********** End **********/
function mainJs(a) {
a = parseInt(a);
switch(a) {
case 1:return getMax(23,21,56,34,89,34,32,11,66,3,9,55,123);
case 2:return getMax(23,21,56,34,89,34,32);
case 3:return getMax(23,21,56,34);
case 4:return getMax(23,21,56,34,89,34,32,11,66,3,9,55,123,8888);
case 5:return getMax();
default:break;
}
}
第6关 对象作为参数
var park = {
name:"Leaf Prak",
location:"Fifth Avenue",
todayTourists:4000
};
var computer = {
name:"Levenon",
price:"$800",
memory:"8G"
};
var city = {
name:"HangZhou",
country:"Chine",
population:9400000
}
function objectFunction(object) {
//请在此处编写代码
/********** Begin **********/
var sum="";
for(var i in object){
sum+=i +":" + object[i]+",";
}
return sum;
/********** End **********/
}
function mainJs(a) {
a = parseInt(a);
switch(a) {
case 1:return objectFunction(park);
case 2:return objectFunction(computer);
case 3:return objectFunction(city);
default:break;
}
}
第7关 函数对象
//求数组中奇数元素的个数
function getOddNumber(a) {
var result = 0;
for(var i = 0;i < a.length;i++) {
if(a[i]%2 != 0)
result++;
}
return result;
}
//求数组中偶数元素的个数
function getEvenNumber(a) {
var result = 0;
for(var i = 0;i < a.length;i++) {
if(a[i]%2 == 0)
result++;
}
return result;
}
function getNumber(func,a) {
//请在此处编写代码
/********** Begin **********/
return func(a);
/********** End **********/
}
//测试接口
function mainJs(b,a) {
a = a.split(",");
var aLength = a.length;
for(var i = 0;i < aLength;i++) {
a[i] = parseInt(a[i]);
}
if(b == "getEvenNumber") {
return getNumber(getEvenNumber,a);
} else {
return getNumber(getOddNumber,a);
}
}
JavaScript学习手册九:字符串的常用方法
第1关 查找字符串的位置
function mainJs(a,b) {
//请在此处编写代码
/********** Begin **********/
var index = a.indexOf(b);
var sum = 0;
while(index>=0){
sum+=index;
index = a.indexOf(b,index+b.length);
}
return sum;
/********** End **********/
}
第2关 求指定位置的字符
function mainJs(a) {
//请在此处编写代码
/********** Begin **********/
return a.slice(0,6);
/********** End **********/
}
第3关 字符串的截取
function mainJs(a,b) {
//请在此处编写代码
/********** Begin **********/
var c=a.indexOf(b)
if(c!=-1){
return(a.slice(0,c)+a.slice(b.length+c))
}
return a;
/********** End **********/
}
第4关 大小写转换
function mainJs(a,b) {
//请在此处编写代码
/********** Begin **********/
var string = b.toUpperCase();
for(var i=0;i<a.length;i++){
str = a.replace(new RegExp(b,"g"),string);
}
return str;
/********** End **********/
}
第5关 字符串的分割
function mainJs(a) {
//请在此处编写代码
/********** Begin **********/
return a.split(" ").length+a.split(",").length-1;
/********** End **********/
}