[CSDN]C1训练题解析_第三部分_JS基础

主页:写程序的小王叔叔的博客欢迎来访👀

支持:点赞收藏关注

社区:JAVA全栈进阶学习社区欢迎加入

声明本篇文档有C1教程视频中老师照着稿读的内容视频不用看,视频小姐姐的口述快到让你着急(1.5倍速你可能会si~)无可观看价值,我就把读的稿整理出来,边看边学习,不做广告推广      |       文末有惊喜

[CSDN]C1训练题解析 目录

第一部分_计算机通识

第二部分_Web基础

第三部分_JS基础

第四部分_Web进阶


二十九、语义化标签

(1)在JavaScript中以下,以下哪些变量名是非法的(会导致程序报错)?   (D)      

(2)在JavaScript中,以下哪些变量名不建议使用?   (A )  

1person 
name 
var 
$orderwera23 
uiuiuqwer4_23aser2

(3)在JavaScript中,以下字符串中那些不能被作为变量名使用?(使用了,程序就会报错)B

for 
function 
var 
myName 
owefsdfwef2

(4)在JavaScript中,以下代码运行会报错    ()     

var 1_person = "Hello world!"
console.log(1_person)

解答:在JS中变量名不能以数字开头

(5)在JavaScript中,从代码易于维护的角度来看,以下哪些变量名比较合适?    (D)    

a1
b2
n234oouj
name
number
age
schoolName

三十、逻辑运算💥

 (1)要想以下JavaScript代码符合预期,空格处应该填什么运算符?    ()     

var a = 11
var b = 6
if(__(a<b)) {
    console.log(a)
} else {
    console.log(b)
}
预期输出结果:
11

 (2)以下JavaScript代码运行的预期输出结果是?    (No)    

var num = 55
var str = "55"
if(num === str) {
    console.log("Yes")
} else {
    console.log("No")
}
预期输出结果:
____

过程:

 (3)以下JavaScript代码运行的预期输出结果是?    (No)       

var res1 = 5 > 8
var res2 = true
if(res1 && res2) {
    console.log("Yes")
} else {
    console.log("No")
}
预期输出结果:
____

(4)以下JavaScript代码运行的预期输出结果是?      

var res1 = 6 > 3
var res2 = 8 >= 8
var res3 = false
if(res1 || res2 && res3) {
    console.log("Yes")
} else {
    console.log("No")
}
预期输出结果:
____

过程

 (5)以下JavaScript代码运行的预期输出结果是?   (8)    

var num = 8
if(true || (num = 9)) {
    console.log(num)
}

预期输出结果:
____

三十一、隐式类型转换

 (1)以下代码的预期输出是?    hello     

var arr = [] 
var str 
if (arr) { 
    str = 'hello' 
} 
console.log(str) 

预期输出: 
____

(2)要想是一下JavaScript代码运行符合预期,空格处应该填什么运算符?     (*)  

var a = true 
var b = 2 
var c = a ___ b 
console.log(c) 

预期输出: 
2

过程:b为2,1*2会得到2,或者0+2会得到2, 空格处应该填*,true被隐式转换成1参入运算

(3)以下JavaScript代码运行的预期输出结果是?     5582     

var res = 567 + '1' - 89
console.log(res) 

预期输出: 
____

过程数字类型字符串类型的值进行+运算,会把数字类型的值转成字符串类型的然后再和另一个字符串进行拼接操作,最后得到一个拼接后字符串。字符串和数字进行-运算,会把字符串转成数字,然后和另一个数字相减

(4)以下JavaScript代码运行的预期输出结果是?    World   

if (null) {
    console.log('Hello')
} else {
    console.log('World')
}

预期输出: 
____

过程null是JS里面一个特殊的值,表示什么都没有,在这里会被转成布尔值。转成布尔类型的话,则为false

(5)以下JavaScript代码运行的预期输出结果是?     Hello    

var a = {}
if (a) {
    console.log('Hello')
} else {
    console.log('World')
}

预期输出: 
____

过程{}表示一个空的对象,在这里会被转成布尔值。在JS中,空对象转成布尔类型的话,其值为true


三十二、条件分支💥

 (1)以下JavaScript代码的预期输出是?     3    

var a = 8 
if (a > 7) { 
    a = 3 
} 
if (a > 4) { 
    a = 5 
} 
console.log(a)

(2)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?       5      

var expr = ____ 
switch (expr) { 
    case 1: 
        // 代码块1 
        console.log(111); 
    case 2: 
        // 代码块2 
        console.log(222); 
    case 3: 
        // 代码块3 
        console.log(333); 
        break;  
    case 5: 
        // 代码块5 
        console.log(111); 
    case 6: 
        // 代码块6 
        console.log(222); 
        break; 
    default: 
        // 代码块7 
        console.log(111); 
}
预期输出: 
111
222

过程

  • 如果case的代码块里面最后没有break,那么当前case被执行后,会立即执行下一个case(不管值是否匹配),直到有一个case的代码块有break为止

  • 以此类推,只有当expr为5时,会执行代码块5、代码块6,从而打印111, 222 符合预期输出

(3)以下JavaScript代码运行的预期输出结果是?     c    

var num = 89
if (num < 89) {
    console.log('a')
} else if (num > 89) {
    console.log('b')
} else {
    console.log('c')
}
预期输出: 
____

(4)以下JavaScript代码运行的预期输出结果是?     Hello    

if (8 > 7) {
    console.log('Hello')
} else {
    console.log('World')
}
预期输出: 
____

(5)以下JavaScript代码运行的预期输出结果是?     c    

if (78 < 67) {
    if (45 > 23) {
        console.log('a')
    } else {
        console.log('b')
    }
} else {
    if (89 > 45) {
        console.log('c')
    } else {
        console.log('d')
    }
}
预期输出: 
____

三十三、For循环

 (1)想要以下代码运行符合预期则空格处应该填什么整型数字?    5       

for (var i=0; i <= ___; i++) {
    console.log(i)
}
预期输出结果: 0 1 2 3 4 5 

(2)想要以下代码运行符合预期则空格处应该填什么整型数字?   9   

for (var i=1; i <= ___; i+=1) {
    console.log(i)
} 
预期输出结果:1 2 3 4 5 6 7 8 9

(3)想要以下代码运行符合预期则空格处应该填什么整型数字?      3     

var arr = ['a1', 'b1', 'c1', 'd1', 'e1', 'f1', 'g1', 'h1']
for (var i=0; i < arr.length; i+=___) {
    console.log(arr[i])
}
预期结果:a1 d1 g1

(4)想要以下代码运行符合预期则空格处应该填?      'email'    

var obj = {
    realName:'张三', 
    phone:13344556789, 
    email:'zhangsan@163.com',
    created_at:'2021-06-12 10:00:00'
}
for (var k in obj) {
    if(k === _______ ){
        console.log(obj[k])
    }
}
预期结果:zhangsan@163.com

解答:对象遍历,赋值的k指向obj的各个键,从realName开始循环,判断k这个键等于什么的时候,打印的obj的值是zhangsan@163.com 主要看哪个键指向的是这个邮箱

(5)想要以下代码运行符合预期则空格处应该填什么整数?     3     

for (var i=4; i<9; i+=___) {
    console.log(i)
}
预期输出: 
4
7

三十四、Math内置对象

(1)表达式 Math.__floor__(13.6589)计算结果为13,则空格处应该填?

(2)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?(使用中文逗号「,」隔开)     abs,sqrt    

var a = -14.4
var b = 10
var c = Math.____ (a*b)
var d = Math.____ (c)
console.log(d)
预期输出结果:
12

(3)要想以下JavaScript代码符合预期,空格处应该填什么整数?    81    

console.log(Math.sqrt(____))
预期输出结果:
9

过程Math内置对象上的sqrt方法是开平方根的意思。什么整数的平方根是9呢?

(4)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?    max   

console.log(Math.____(3, 4, 89))
预期输出结果:
89

(5)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?    ceil    

console.log(Math.____(8.01))
预期输出结果:
9

过程:给Math内置对象上的一个方法传入一个8.01这个小数,得到一个整数9,是用向上取整还是向下取整,还是四舍五入还是直接去掉小数部分?


三十五、对象属性💥

 (1)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?    age     

var obj = {name: 'lisi', city: '北京', age: 21}
console.log(obj._______)

// 预期输出结果:21

(2)要想以下JavaScript代码符合预期,空格处应该填什么字符串?    created_staf      

var obj = {id: 1, title: 'React-JSX语法', lengtth: "120", created_at: "2021-07-01", created_staf: "张三"}
var adminName = '_______'
console.log(obj[adminName])
预期输出结果:
张三

过程:空缺处是要求把一个字符串赋值给adminName变量,打印处是对象查询变量Key的值,值为张三,那么我们只需要把它对应的key填入即可满足条件

(3)要想以下JavaScript代码符合预期,空格处应该填什么?     school     

var obj = {
    name: '李四',
    school: '北京大学',
    age: 23
}
console.log(obj.____)
预期输出结果:
北京大学

(4)要想以下JavaScript代码符合预期,空格处应该填什么整数    1    

var obj = {
    name: '王五',
    friends: ['张三', '李四'],
    age: 23
}

console.log(obj.friends[____])
预期输出结果:
李四

过程obj这个对象的friends属性是一个数组,现在要打印这个数组的某一个索引上的值,打印结果是李四,该索引就是李四这个值的索引

(5)要想以下JavaScript代码符合预期,空格处应该填什么?    hobby      

var obj = {
    name: '小明',
    friends: ['张三', '李四'],
    hobby: ['篮球', '足球', '游泳', '看书'],
    age: 23
}

console.log(obj.name + '喜欢' + obj.____[1])

预期输出结果:
小明喜欢足球

三十六、函数定义与调用

(1)要想以下JavaScript代码符合预期,空格处应该填什么整型数字?     4   

function foo(a, b) { 
    return a * b 
} 
console.log(foo(8, ___)) 
预期输出: 
32

(2)要想以下JavaScript代码符合预期,空格处应该填什么整型数字?    3   

function foo(a) { 
    return a * a * a 
} 
console.log(foo(___)) 
预期输出: 
27

(3)要想以下JavaScript代码符合预期,空格处应该填什么?       getNewFriend      

var obj = {
    name: '小明',
    friends: ['张三', '李四'],
    hobby: ['篮球', '足球', '游泳', '看书'],
    age: 23,
    getNewFriend: function (newFriend) {
        this.friends.push(newFriend)
    }
}

obj._______('王五')

console.log(obj.friends[2])

预期输出: 
王五

(4)以下的JavaScript代码的预期输出是?     Hello     

var checkNum = function (num) {
    return num % 2 === 0
}
if (checkNum(8)) {
    console.log('Hello')
} else {
    console.log('World')
}

预期输出: 
____

(5)以下的JavaScript代码的预期输出是?     World    

var checkNum = function (num, divisor) {
    return num % divisor === 0
}
if (checkNum(27, 5)) {
    console.log('Hello')
} else {
    console.log('World')
}

预期输出: 
____

三十七、常见内置函数

 (1)要想以下JavaScript代码运行符合预期,空格处应该填什么?     false      

if (isNaN('.67') === ___) { 
    console.log('hello') 
} 

预期输出: 
hello 

解析:isNaN函数当参数是一个数字或者数字字符串的时候,返回假,其他返回真,在大多数编程语言中,0.89这样的小数也可以使用.89来表示,省略掉0

(2)要想以下JavaScript代码运行符合预期,空格处应该填什么整数?    8     

console.log(parseInt("21", ____))
预期输出: 
17

解析parseInt这个内置函数会把第一个参数按照第二个参数指定的基数(或者说是进制)转成一个十进制整数,并返回。现在第一个参数是"21",最终转成的10进制数是17,那么多少进制下的21才是10进制下的17呢?

(3)以下的JavaScript代码的预期输出是?  8.9     

console.log(parseFloat('8.9a89bd'))
预期输出:
____

(4)以下的JavaScript代码的预期输出是?        

if (isNaN('3e4') === false) {
    console.log('Hello')
} else {
    console.log('World')
}

预期输出: 
____

解析isNaN内置函数是判断一个字符串是否不是一个数字。在JavaScript中数字的表示有很多种,例如十进制的整数,十进制的小数,科学计数法(例如:4e20表示4 乘以 10的20次方),十六进制表示法(例如:0x13af),八进制表示法(例如:012)等。


三十八、字符串定义与转义字符

 (1)要想以下JavaScript代码运行符合预期,空格处需要填写什么?       B      

var str = ________ 
console.log(str) 

预期输出: 
小明说:"吃饭吗?" 
我说:"已经吃过了"

(2)以下的JavaScript代码的预期输出是?     '这是为什么呢?'   

var str = '\'这是为什么呢?\''
console.log(str)
预期输出: 
____

(3)以下的JavaScript代码的预期输出是?   "这是为什么呢?"    

var str = '\"这是为什么呢?"'
console.log(str)
预期输出: 
____

(4)以下的JavaScript代码的预期输出是?     \n这是为什么呢?"    

var str = '\\n这是为什么呢?"'
console.log(str)
预期输出: 
____

解析:转义符本身也能被转义,转义后就被当成一个普通的反斜杠字符(\)使用,不再具有转义的效果了。


三十九、字符串常见方法与属性

1、String对象属性(length:获取字符串入的长度)

2、String对象的常用方法

方法名称作用示例结果
charAt()获取指定位置的字符'abcd'.charAt(2)c
indexOf()检索指定的字符串值在字符串中首次出现的位置'abcd'.indexOf('a')0
lastIndexOf()从后往前查询所要搜索的字符串在原字符串中第一次出现的位置(索引),找不到则返回-1'abcdabc'.lastIndexOf('a')4
search()检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串'abcd'.search('c')2
match()字符串内检索指定的值,或找到一个或多个正则表达式的匹配'abcdabc'.match('a')['a', index: 0, input: 'abcdabc']
substring()字符串截取方法,它可以接收两个参数,分别是要截取的开始位置和结束位置,它将返回一个新的字符串'abcdabc'.substring(1, 4)bcd
slice()与substring()方法非常类似,它传入的两个参数也分别对应着开始位置和结束位置。而区别在于,slice()中的参数可以为负值'abcdabc'.slice(1, 4)bcd
replace()用来进行字符串替换操作,它可以接收两个参数,前者为被替换的子字符串,后者为用来替换的文本'abcd'.replace('a', 'A')Abcd
split()于把一个字符串分割成字符串数组'abcd'.split('')['a', 'b', 'c', 'd']
toLowerCase()可以把字符串中的大写字母转换为小写'Abcd'.toLowerCase()abcd
toUpperCase()可以把字符串中的小写字母转换为大写'Abcd'.toUpperCase()ABCD

(1)要想以下JavaScript代码符合预期,空格处应该填什么?    lastIndexOf  

var a = "abccba"._______("b")
console.log(a)
预期输出结果:
4

(2)要想以下JavaScript代码符合预期,空格处应该填什么?     split    

var str = "a1-b2-c3-d4"
console.log(str._____('-'))
预期输出结果:
['a1', 'b2', 'c3', 'd4']

(3)要想以下JavaScript代码符合预期,空格处应该填什么整数?    10   

var str = "JavaScript是一门动态类型的语言"
console.log(str.substring(4, ____))
预期输出结果:
Script

(4)以下的JavaScript代码的预期输出是?     ABCDE    

var str = "AbcDe"
console.log(str.toUpperCase())
预期输出结果:
____

(5)以下的JavaScript代码的预期输出是?     n   

var str = "Chinese"
console.log(str.charAt(3))
预期输出结果:
____

四十、数组常见方法与属性💥

 (1)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?  join   

var arr = ['e', 'd', 'f'] 
var str = arr.___() 
console.log(str) 

预期输出结果: e,d,f

解析:在数组上调用一个方法,返回一个字符串,并且这个字符串是数组里面的每个元素以逗号相连。就是将数组的每个元素连接起来,join方法正好能实现此功能。join方法在不给参数的时候就是以英文的逗号连接数组的每个元素

(2)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?    unshift   

var arr = ['tree', 795, [0, 1, 2]]; 
arr.______([4,9,10]) 
console.log(arr[0][1]) 

预期输出结果: 9

解析

  • arr[0][1]是指数组arr索引为0的值,再取其索引为1的值。

  • 如果arr[0]的值为[4,9,10],则arr[0][1]的值为9。

  • 所以该数组方法就是将参数[4,9,10]加到数组arr的开头,unshift能实现此功能。

(3)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?    3   

var arr = [1,2,3,'a','t',45,'r',9]; 
var newArr = arr.slice(____, 6) 
console.log(newArr[2])

预期输出结果: 
45

解析:数组的slice方法会截取原数组的一部分并返回出来。从slice的第一个参数所表示的索引位置的元素(包含该元素)开始,到第二个参数所代表的索引位置的元素(不包含该元素)结束。该题中newArr[2]的值为45,又因为newArr是从arr中截取出来的,所以newArr应该为['a', 't', 45]

(4)要想以下JavaScript代码符合预期,空格处应该填什么(表达式除外)?     reverse    

var arr = ['a', 'b', 'c', 'd']; 
var str = arr.______().join('')
console.log(str) 

预期输出结果: 
dcba

(5)要想以下JavaScript代码符合预期,空格处应该填什么整数      2    

var arr = [
    {
        name: '张三',
        age: 24
    },
    {
        name: '李四',
        age: 32
    },
    {
        name: '王五',
        age: 19
    }
]

arr.sort(function (item1, item2) {
    return item1.age - item2.age
})

console.log(arr[____].name)

预期输出结果: 
李四

参考:C1能力认证训练题解析 _ 第三部分 


C1证书粘贴位置💯💯💯


⚠️注意 ~

💯本期内容就结束了,如果内容有误,麻烦大家评论区指出

如有疑问❓可以在评论区💬或私信💬,尽我最大能力🏃‍♀️帮大家解决👨‍🏫!

如果我的文章有帮助,欢迎打赏✔️鼓励博主🏃,您的鼓励是我分享的动力🏃🏃🏃~

  • 8
    点赞
  • 6
    收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:精致技术 设计师:CSDN官方博客 返回首页
评论 7

打赏作者

写程序的小王叔叔

感谢!您的打赏是我前进的动力~

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值