3-4 项目作业

3-4 项目作业

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
function createElement(tagName='div',{content='default'})={
return `<${tagName} class='default'>[content]</${tagName}>`



} ;
console.log(createElement());
console.log(reateElement('a'));
console.log(createElement('span',{content:'慕课网'}))





</script>
</body>

老师,麻烦帮忙看下,是思路有问题还是语法用错了,为什么效果实现不出来?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕久久 2022-07-21 09:35:33

同学你好,语法写错了,老师帮你调整一下,你对比一下:

function createElement(tagName = 'div', {
            content = 'default',
            className='default'
        }={}){
            // return `<${tagName} class='default'>[content]</${tagName}>`
            return `<${tagName} class='${className}'>${content}</${tagName}>`
        };
        console.log(createElement());
        // console.log(reateElement('a'));
        console.log(createElement('a'));
        console.log(createElement('span', {
            content: '慕课网',
            className:"test"
        }))

https://img1.sycdn.imooc.com//climg/62d8ad4d0924ebf008300429.jpg

祝学习愉快!

  • 提问者 慕移动4506339 #1
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    </head>
    <body>
    <script>
    function createElement(tagName='div',{content='default',className='default'}={}){
    return `<${tagName} class='${className}'>${content}</${tagName}>`
    
    
    
    } ;
    console.log(createElement());
    console.log(createElement('a'));
    console.log(createElement('span',{content:'慕课网',className:'test'}))
    
    
    
    
    
    </script>
    </body>

    老师,修改代码如上;

    但不明白为什么设置函数的对象参数的时候要在后面加上‘={}' ? 这样不就代表第二个参数默认是空对象吗?当没有传入参数时,它不就会使用默认的空对象了吗,实际效果中又没有,这是怎么回事

    {content='default',className='default'}={}


    2022-07-21 18:29:06
  • 好帮手慕久久 回复 提问者 慕移动4506339 #2

    修改后的代码是对的。这种写法,后面一节课程中会具体讲,同学可以往下学,如果听不懂,可以继续提问,老师们再为你解答。

    2022-07-21 18:32:24
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师