web前端面试题-A

95 阅读3分钟

面试总结

css中有哪些函数

  • calc
  • var
  • min
  • max
  • repeate

css如何html(js)传递变量(参数)

<!--通过style属性定义变量, 并传递给元素对象-->
<div style="--color:red"></di>

如何进行代码部署

  • jenkins
  • CI&CD
    • CI: continue intergration( 持续集成)
    • CD: continue delivery/deploy(持续交付/部署)

git使用命令

  • git init
  • git add .
  • git commit -m
  • git push
  • git pull
  • git branch 分支名称
  • git checkeout 分值名称
  • git reset 版本号 --hard
  • git merge 分支名称
  • git stash: 暂存当前分支代码, 而不提交( git stash list / git stash pop )
  • git log --oneline
  • git reflog

vue如何实现国际化(多语言)

  • vue-i18n插件

    npm i vue-i18n
    
    import {createI18n} from 'vue-i18n';
    var i18n=createI18n({
        locale:'en',
        fallbackLocale:'zh',
        messages:{
            en:{
               message:{
                   msg:"hello"
               } 
            },
            zh:{
                message:{
                   msg:"你好"
               } 
            },
            ja:{
                
            }
        }
    });
    const app=createApp();
    app.use(i18n);
    
    
    <h1>{{$t('message.msg')}}</h1>
    

async和defer有什么区别?

‌script标签上添加async和defer属性主要用于控制外部JavaScript脚本的加载和执行方式,它们之间的主要区别在于脚本的执行时机、顺序以及是否阻塞页面解析。

  • 执行时机和顺序‌:

  • defer属性‌:脚本将按照HTML文档的顺序加载,并在文档解析完毕后执行。多个带有defer属性的脚本会按照它们在文档中的顺序依次执行。这意味着脚本的执行不会阻塞页面的解析,而是等待HTML解析完成后再执行。如果页面中有多个带有defer属性的脚本,它们将按照加载顺序执行‌12。

  • async属性‌:脚本的加载和页面其他内容的加载是异步进行的,不会阻塞HTML文档的解析过程。脚本加载完成后会立即执行,不保证多个带有async属性的脚本的执行顺序。这意味着脚本的加载和执行可能与页面的其他部分并行进行,且不保证按照文档中的顺序执行‌12。

  • 是否阻塞页面解析‌:

  • 两者都不会阻塞页面的初始解析,即浏览器在遇到带有defer或async属性的script标签时,会继续解析HTML文档,而不会等待JavaScript脚本的加载和执行完成。这一点与没有使用defer或async属性的script标签的行为形成对比,后者会阻塞页面的解析直到脚本加载和执行完毕‌34。

  • 依赖关系和处理‌:

  • 对于需要按照特定顺序加载和执行的脚本,使用defer属性可以确保它们按照文档中的顺序依次执行,后面的脚本可以依赖前面的脚本。这适用于需要按照一定顺序执行的脚本场景‌2。

  • async属性下的脚本加载和执行顺序不确定,适用于那些没有依赖关系、可以并行加载和执行的脚本。如果脚本之间存在依赖关系,使用async可能会导致执行顺序混乱,从而引发问题‌。