精华内容
下载资源
问答
  • 常见的DOM操作有哪些】 1.背景介绍 什么是DOM?简单地说,DOM是一套对文档的内容进行抽象和概念化的方法 在现实世界里,人们对所谓的'世界对象模型'都不会陌生,例如,当用'汽车'、'房子'和'树'等名词来称呼...

    每篇分享文从

    【背景介绍】【知识剖析】【常见问题】【解决方案】【扩展思考】【更多讨论】【参考文献】
    七个方面深度解析前端知识/技能,本篇分享的是:

    【常见的DOM操作有哪些】

    1.背景介绍

        什么是DOM?简单地说,DOM是一套对文档的内容进行抽象和概念化的方法
    
        在现实世界里,人们对所谓的'世界对象模型'都不会陌生,例如,当用'汽车'、'房子'和'树'等名词来称呼日常生活环境里的事物时,
        我们都可以百分百的肯定对方知道我们说的是什么,这是因为人们在对这些名词所代表的的东西有着相同的认知。
        于是,当对别人说"汽车停在车库里"时,可以断定他们不会理解为"小鸟关在壁橱里"
    
        我们的"世界对象模型"不进可以用来描述客观存在的事物,还可以同来描述抽象概念。
        例如,假设有个人想我问路,而我给出的答案是"左边第三栋房子",这个答案有没有意义取决于那个人能够理解"左边"和"第三"的含义。
        如果他不会数数或者分不清左右,则不管他是否理解这几个概念,我的回答对他都不会有任何的帮助。
        在现实世界中,正是因为大家对抽象的"世界对象模型"有着基本的共识,人们才能用非常简单的话来表达出复杂的含义并得到对方的理解
    
        而DOM的定义则是由W3C所制定的标准,定义为"一个与系统平台和编程语言无关的接口,
        程序和脚本可以通过这个接口动态地访问和修改文档的内容`、结构和样式。"
    

    2.知识剖析

        2.1. 节点是什么
    
        节点这个词是一个网络用语,代表了网络中的一个连接点。一个网络就是由一些节点构成的集合。
    
        在现实世界中,一切事物都由原子构成。原子就是现实世界的节点。但是原子同样还可以进一步分解为更细小的亚原子微粒。
        这些亚原子微粒同样也是节点。
    
        DOM也是同样的情况。文档是由节点构成的集合,只不过此时的节点是文档树上的树枝和树叶而已。
    
        在DOM中有许多不同类型的节点。就像原子包含着亚原子微粒那样,也有很多类型的DOM节点包含着其他类型的节点。
        接下来我们先看看其中的三种:元素节点、文本节点和属性节点。
    
        2.2. 元素节点
    
        在DOM中的原子就是元素节点。
    
        像是我们现在所看到的这个网页,我们在编写时,会用到诸如<body>、<head>、<p>这些元素。
        如果把Web上的文档比作一座大厦,那么元素就是建造这座大厦的砖块,这些元素在在文档中的布局形成了文档的结构。
        元素可以包含其他的元素,在我们所看到的页面页中,内容都被包含在在一个<section>元素的内部。
        而唯一没有被包含在其他元素中的唯一元素是'<html>',他和我们的节点树的根元素,其他的所有元素都被包含在'<html>'中。
    

    在这里插入图片描述

    网页的部分节点树

        2.3. 文本节点
    
        元素节点只是节点类型的一种。如果一份文档完全有一些空白元素构成,他将有一个结构,但这份文档本身将不会包含什么内容。
    
        在我们的ppt首页中,'<p>'元素包含着文本,'分享人:刘洪利'。他就是一个文本节点。
        在html文档里,文本节点总是被包含在元素节点的内部。
    
        2.4. 属性节点
    
        属性节点用来对元素做出更具体的描述。例如,几乎所有的元素都有一个title属性,
        而我们可以利用这个属性对包含在元素里的东西做出准确的描述:
        '<p title="a gentle reminder">这是一个带有温馨提示的p标签</p>'
    
        在DOM中,title="a gentle reminder"是一个属性节点。因为属性总是被放在起始标签里,所以属性节点总是被包含在元素节点中。
        并非所有的标签都包含着属性,但是所有的属性都被元素包含。
    

    在这里插入图片描述

    元素的构成

        2.5. 常见的DOM操作
    

    获取DOM

        通过使用 getElementById() 方法匹配元素的id属性来访问元素节点,对元素节点进行操作
    
        通过使用 getElementsByTagName() 方法匹配元素的tagName来访问元素节点,对元素节点进行操作
    
        通过使用 getElementsByClassName() 方法匹配元素的className来访问元素节点,对元素节点进行操作
    
        值得注意的是, getElementsByTagName() 和 getElementsByClassName() 这两种方法因为其访问的是节点中的可能为复数的属性,
        所以得到的会是一个以数组的形式来体现出来的元素节点集合,我们可以通过打印获取到的DOM节点来判断类型
    

    DOM事件

        onclick事件---当用户点击时执行
    
        onload事件---当用户进入时执行
    
        onunload事件---用用户离开时执行
    
        onmouseover事件---当用户鼠标指针移入时执行
    
        onmouseout事件---当用户鼠标指针移出时执行
    
        onmousedown事件---当用户鼠标摁下时执行
    
        onmouseup事件---当用户鼠标松开时执行
    

    3. 常见问题

    如何通过class和tag调用元素?如何对其设置属性?

    4.解决方案

    在一个页面中常常有多个class相同的元素,也有多个标签相同的元素,在调用时方法如下

    5. 扩展思考

        onblur事件---当对象失去焦点时发生
    
        onchange事件---当对象域的值被改变时发生
    
        button 事件---属性可返回一个整数,指示当事件被触发时哪个鼠标按键被点击。
    
        更多的事件就不一一的描述了,有兴趣的同学可以去看下这个
    

    6. 参考文献

    书籍:《JavaScript DOM编程艺术》

    网址:w3school

    7.更多讨论

            Q:dom操作是异步的吗
    
            A:dom的操作其实是同步的,但是渲染是异步的。
            因为JavaScript引擎线程跟GUI渲染线程是互斥的,即我执行的时候,你就靠边站,我执行完你才能执行。
            具体的可以看下这篇文章https://segmentfault.com/a/1190000005803237----《关于修改DOM是异步还是同步的问题》
    
            Q:除了getElementsByClassName()、getElementsByTagName()、getElementById()还有什么可以获取dom节点的方法
    
            A:
    

    1.通过节点属性得到元素

                    1)node属性:来获取节点的名称、类型、值。
    

    在这里插入图片描述

    js代码:

                    window.onload=function(){ 子节点
    
                        var pox = document.getElementById('pox');
    
                        alert(pox.childNodes.length) //子节点数量
    
                        alert(pox.childNodes[0].nodeValue); // 第一个子节点的内容
    
                        alert(pox.firstChild.nodeValue);  // 第一个子节点的内容
    
                        alert(pox.lastChild.nodeValue); // 最后一个节点的内容
    
                    };
    
        注意:node只能获取当前节点的东西,在上面的js代码中node本身把节点指针放在元素上,所以本身没有value值,
    

    2.层次节点属性:层级节点可以分为父子节点和兄弟节点,通过当前节点可以获取其他层次的节点。

        2.1)子节点childNodes、第一个字节点firstChilds、最后一个子节点lastChilds。
    

    js代码:

        window.onload=function(){ 子节点
    
            var pox = document.getElementById('pox');
    
            alert(pox.childNodes.length) //子节点数量
    
            alert(pox.childNodes[0].nodeValue); // 第一个子节点的内容
    
            alert(pox.firstChild.nodeValue);  // 第一个子节点的内容
    
            alert(pox.lastChild.nodeValue); // 最后一个节点的内容
    
        };
    
        2.2)父节点parentChild、兄弟节点previousSibing,nextSibing。
    

    js代码:

        window.onload=function(){ 父节点,上下节点
    
            var pox = document.getElementById('pox');
    
            alert(pox.parentNode);    //pox节点的父节点body节点
    
            alert(pox.firstChild.nextSibling);    //pox节点的子节点中第一个节点的下一个节点
    
            alert(pox.lastChild.previousSibling);  //pox节点的子节点中最后一个节点的上一个节点
    
            alert(pox.lastChild.previousSibling.nodeName)
    
        };
    

    本回答摘自-----------《获取元素节点(DOM基础 )》http://blog.csdn.net/u010928364/article/details/43935875

    Q:dom操作的最佳实践应该是什么样的

    A:

    1. 平稳退化:正确的使用JavaScript脚本,让访问者在他们浏览器不支持JavaScript的情况下仍能顺利的浏览你的网站,

    2. 即是有些功能无法使用,但最基本的操作仍能顺利完成。

    3. 分离JavaScript:将HTML内部DOM事件分离到外部来,保证HTML的纯净,

    4. 同时可以在外部js文件通过获取DOM节点来给这个节点添加事件的形式来运行外部JavaScript文件。

    5. 向后兼容:因为不同浏览器对JavaScript的支持程度也不一致,绝大多数的浏览器都可以或多或少的支持JavaScript,

    6. 但比较古老的浏览器却很有可能无法理解DOM提供的方法和脚本。因此,我们通过以下几点来确保那些古老的浏览器不会因为脚本代码而出问题。

    3.1. 对象检测:检测浏览器对JavaScript的支持程度。我们可以通过将某种方法打包在一个if语句中,然后根据这条语句的条件表达式的求值结果为true(这个方法存在)还是false(这个方法不存在)来决定应该采取怎么样的行动。

    例如,如果有一个使用了getElementById()方法的函数么就可以在调用getElementById()方法之前先检查用户所用的浏览器是否支持这个方法。在使用对象检查时,一定要删除方法名后面的圆括号,如果不删掉,测试的将是方法的结果,无论方法是否存在

    代码:

    if( ! document.getElementById ) return false;

    1. 性能考虑: 为保证应用流畅的运行,在为文档编写和应用脚本时,需要注意一些问题。

    4.1. 尽量少访问DOM和尽量减少标记

    访问DOM的方式对脚本性能会产生很大的影响。例如当我们需要访问html页面中所有的div元素来找到我们想要的那个节点,我们不知道会有多少div元素来面对着我们,所以浏览器会去搜索整个DOM树,从中查找可能匹配的元素。

    另一个是尽量减少文档中的标记数量。过多不必要的元素只会增加DOM树的规模,进而增加遍历DOM树以查找特定元素的时间。

    4.2. 合并和放置脚本

    我们通过合并外部JavaScript文件来减少加载页面时发送的请求数量。减少请求数量通常都是在性能优化时优先考虑的。

    4.3. 压缩脚本

    通过将脚本文件中不必要耳朵字节,如空格和注释统统删除,从而达到“压缩文件”的目的。

    展开全文
  • pwd 用于显示当前的工作目录。 cd 用于切换工作路径  cd - 切换到上一次的目录 ...ls 用于查看目录中有哪些文件  -a 包括隐藏文件的全部文件  -d 仅看目录本身  -h 已读的文件容量大小 ...

    pwd  用于显示当前的工作目录。


     

    cd  用于切换工作路径

      cd -  切换到上一次的目录

      cd ~  切换到家目录

      cd ~username  切换到其他用户的家目录

      cd ..  切换到上级目录


     

    ls  用于查看目录中有哪些文件

      -a  包括隐藏文件的全部文件

      -d  仅看目录本身

      -h  已读的文件容量大小

      -l  显示文件的详细信息


    cat  用于查看纯文本文件(较短的)

      -n  显示行号

      -b  显示行号但不包括空行


    more  用于查看纯文本文件(较长的)

      -数字  预先显示的行数(默认为一页)

      -d  x显示提示语句与报错信息


    head  用于查看纯文本的前N行

      -n 10  显示10行

      -n -10  不显示后10行


    tail  用于查看纯文本的后N行

      -n 10  显示后10行

      -f  持续刷新新显示的内容


    od  用于对查看特殊格式的文件

      -t a  默认字符

      -t c  ASCII字符

      -t o  八进制

      -t d  十进制

      -t x  十六进制

      -t f  浮点数


    tr  用于转换文本文件中的字符

    示例:

    将123.txt文件的内容转换成大写:cat 123.txt | tr [a-z] [A-Z]。


     

    wc  用于统计指定文本的行数、字数、字节数。

      -l  只显示行数

      -w  只显示单词数

      -c  只显示字节数


    cut  用于通过列来提取文本字符。

      -d 分隔符  指定分隔符,默认Tab

      -f  指定显示的列数

      -c  单位改为字符

    示例:

    获取系统中所有的用户的名称,

    -d表示以:来做分隔符,-f1只看第一列的内容

    cut -d: -f1 /etc/passwd


     

    diff  用于比较多个文本文件的差异。

      -b  忽略空格引起的差异

      -B  忽略空行引起的差异

      -q或--brief  仅报告是否存在差异

      -c  使用上下文输出格式

    示例:diff a.txt b.txt


     

    touch  用于创建空白文件与修改文件时间。

      linux中文件的三种时间:

        更改时间(mtime),内容修改时间(不包括权限)

        更改权限(ctime),更改权限与属性的时间

        读取时间(atime),读取文件内容的时间

      -a  仅修改访问时间 atime。

      -m  仅修改更改时间 mtime。

      -d  同时修改atime与mtime。

      -t  要修改成的时间[YYMMDDhhmm]

    示例:

    黑客执行touch -d "2 days ago" test,便将访问与修改时间修改为了2天前,

    伪造自己没有动过该文件的假象。


     

    mkdir  用于创建空白的文件夹。

      -m=MODE  默认文件目录权限,如"-m 755"

      -p  连续创建多层目录(若文件已存在则忽略)

      -v  显示创建的过程

    示例:

    创建5个目录:mkdir -p a/b/c/d/e


     

    cp 用于复制文件或目录

      -p  保留原始文件的属性

      -d  若对象为链接文件,则保留该链接文件的属性

      -r  递归持续复制(用于目录)

      -i  若文件存在询问是否覆盖

      -a  相当于-pdr


     

    mv  用于移动文件或改名。

    示例:

    将文件aaa重命名为bbb:mv aaa bbb。


     

    rm  用于删除文件或目录

      -f  忽略警告信息

      -i  删除前先询问

      -r  删除文件夹


     

    rmdir  删除空目录


     

    dd  用于指定大小的拷贝的文件或指定转换的文件。

      if  输入的文件名称

      of  输出的文件名称

      bs  设置每个块的大小

      count  设置要拷贝的块的个数

      conv=ucase  将字母从小写转换为大写

      conv=lcase  将字符从大写转换为小写

    示例:

    将光驱设备拷贝成镜像文件:

    dd if=/dev/cdrom of=rhel.iso


     

    useradd  用于创建新用户。

      -d  指定用户的家目录

      -D  展示默认值

      -e  账号有效截止日期

      -g  指定一个初始用户组

      -G  指定一个或多个扩展用户组

      -N  不创建与用户同名的用户组

      -s  指定默认的Shell

      -u  指定用户UID


     

    id  用于查看用户的基本信息

    示例:id root


     

    passwd  用于修改用户的密码

      -l  锁定用户禁止其登录

      -u  解除锁定,允许登录

      --stdin  允许从标准输入修改用户密码,如(echo "NewPassWord" | passwd -stdin Username)

      -d  使账号无密码

      -e  强制用户下次登录时修改密码

      -S  显示用户的密码状态

    示例:

    修改当前用户的密码:passwd

    修改其他用户的密码:passwd 用户名


     

    userdel  用户删除用户。

      -f  强制删除用户,家目录与其相关文件

      -r  同属删除用户,家目录与其相关文件


     

    usermod  用于修改用户的属性。

      -c  填写账号的备注信息

      -d-m  -m与-d连用,可重新指定用户的家目录并自动旧的数据转移过去。

      -e  账户到期时间,格式"YYYY-MM-DD"

      -g  变更所属用户组

      -G  变更扩展用户组

      -L  锁定用户禁止其登录

      -U  解锁用户,允许登录

      -s  变更默认终端

      -u  修改用户的UID


     

    groupadd  用于创建群组

    示例:

    创建test群组:groupadd test


     

    转载于:https://www.cnblogs.com/gyfluck/p/9266522.html

    展开全文
  • tar 用于对文件打包压缩或解压。 示例:  打包并压缩文件:tar -czvf 压缩包名.tar.gz 文件名 ... -t 查看压缩包内有哪些文件  -z 用gzip压缩压缩或解压  -j 用bzip2压缩或解压  -v 显示压缩或...

    tar  用于对文件打包压缩或解压。

    示例:

      打包并压缩文件:tar -czvf 压缩包名.tar.gz 文件名

      解压并展开压缩包:tar -zxvf 压缩包名.tar.gz

      -c  创建压缩文件

      -x  解开压缩文件

      -t  查看压缩包内有哪些文件

      -z  用gzip压缩压缩或解压

      -j  用bzip2压缩或解压

      -v  显示压缩或解压的过程

      -f  目标文件名

      -p  保留原始的权限与属性

      -P  使用绝对路径来压缩

      -C  指定解压到的目录


     grep  用于对文本进行搜索。

      -b  将可执行文件(binary)当做文本文件(text)来搜索

      -c  仅显示找到的次数

      -i  忽略大小写

      -n  显示行号

      -v  反向选择,仅列出没有关键词的行

    示例:

    找出系统中不允许登录的用户:grep /sbin/nologin /etc/passwd。

    找出文件/user/123.xml中所包含的entry的行,并输出到/root/lines中:grep entry /usr/123.xml >> /root/lines。


     

    find  用于查找文件

      -name  匹配名称

      -perm  匹配权限

      -user  匹配所有者

      -group  匹配所有组

      -mtime -n +n  匹配修改内容的时间(-n指n天以内,+n指n天以前)

      -newer f1 !f2  匹配比文件f1新却比f2旧的文件

      --type b/d/c/p/l/f  匹配文件类型(块设备、目录、字符设备、管道、链接文件、文件文件)

      --size  匹配文件的大小(+50k查找超过50k的文件,而-50k则表示查找小于50k的文件)

      -prune  忽略某个目录

      --exec {}\;  后面可接对搜索到的结果进一步处理的命令。

    示例:

    ①搜索/etc/中所有的host开头的文件:find /etc -name "host*" -print。

    ②找出用户test的所有文件并复制到/root/findresults目录:find / -user test -exec cp -arf {} /root/findresults/ \;。


     

    管道命令符

      "|",作用是将前一个命令的标准输出当作后一个命令的标准输入,格式:命令A|命令B。

    示例:

      统计所有不允许登录的用户个数:grep /sbin/nologin /etc/passwd | wc -l。

      以翻页形式查看/etc目录中的文件:ls -l /etc/ | more。

      向test用户发送一封邮件:echo "Content" | mail -s "Subject" test。

      使用非交互式设置用户密码,将test用户密码设置为123321:echo "123321" | passwd -stdin test。


     

    输入输出重定向

      标准输入(STDIN,文件描述符为0),默认从键盘输入,为0时表示是从其他文件或命令的输出。

      标准输出(STDOUT,文件描述符为1),默认输出到屏幕,为1时表示是文件。

      错误输出(STDERR,文件描述符为2):默认输出到屏幕,为2时表示是文件。

    输出重定向:

      命令 > 文件  将标准输出重定向到一个文件中(清空原有文件的数据)

      命令 2>文件  将错误输出重定向到一个文件中(清空原有文件的数据)

      命令 >> 文件  将标准输出重定向到一个文件中(追加到原有文件的数据后面)

      命令 2>> 文件  将错误标准输出重定向到一个文件中(追加到原有文件的数据后面)

      命令 >> 文件 2>$1  将标准输出与错误输出共同写入到一个文件中(追加到原有文件的数据后面)

    输入重定向:

      命令 < 文件  将文件作为命令的标准输入

      命令 << 分界符  从标准输入中读入,直到遇到分界符才停止

      命令 < 文件1 > 文件2  将文件1作为命令的标准输入并将标准输出到文件2。

    示例:

    ①将man命令的帮助文档写入到/root/man.txt中:man bash > /root/man.txt

    ②在123.txt文件中追加一行字:echo 'hello world' >> 123.txt

    ③把readme.txt文件作为输入重定向给wc -l 命令来计算行数:wc -l < readme.txt。

    相当于 cat readme.txt | wc -l。


     命令行通配符

      *  匹配零个或多个字符

      ?  匹配任意单个字符

      [0-9]  匹配范围内的数字

      [abc]  匹配任意一个字符

    示例:

    查看以sda开头的所有设备文件:ls /dev/sda*

    查看sda后面有一个字符的设备文件:ls /dev/sda?

    查看sda后面包含0-9数字的设备文件:ls /dev/sda[0-9]

    查看sda后面是1或者3或者5的设备文件:ls /dev/sda[135]

    特殊字符扩展:

      \(反斜杠)  转义后面单个字符

      ''(单引号)  转义所有的字符

      ""(双引号)  变量依然生效

      ``(反引号)  执行命令语句

    示例:

    输出"价格是$5",因为美元符号与代表变量取值的$符号冲突了,需要转义。

    [root@linux ~]# PRICE=5
    [root@linux ~]# echo "Price is \$$PRICE"
    Price is $5

    使用单引号,变量将不再取值。

    echo 'Price is \$$PRICE'

    结果:Price is \$$PRICE。

    反引号的使用:echo `uname -a`。查看本机内核版本。


     alias  用于设置命令的别名,格式:alias 别名=命令

    unalias  用于取消命令的别名,格式:unalias 别名

    echo $PATH  查看$PATH变量的方法。

    type 命令名字  查看命令时内部命令还是外部命令

    PATH=$PATH:/root/bin  为变量$PATH增加新的值


     

    环境变量:可以使用env命令查看环境变量。

    局部变量:某个用户设置的变量正常为局部变量,只有自己可以使用。

    全局变量:export命令用于将局部变量提升为全局变量。格式:export 变量名[=变量值]。


    vim编辑器三种模式:命令模式、末行模式、编辑模式。

       命令模式:控制光标移动,可对文本进行删除、复制、粘贴等工作。

       编辑模式:正常的文本录入。

      末行模式:保存、退出、设置编辑环境。

      dd  删除(剪切)光标所在的整行

      5dd  删除(剪切)光标出开始的5行

      yy  复制光标所在的整行

      5yy  复制从光标出开始的5行

      p  将之前删除(dd)或复制(yy)过的数据粘贴到光标后

      /字符串  在文本中从上至下搜索该字符串

      ?字符串  在文本中从下至上搜索该字符串

      n  显示搜索命令定位到的下一个字符串

      N  显示搜索命令定位到的上一个字符串

      u  撤销上一步操作

    末行模式的常用命令:

      :set nu  显示行号

      :setnonu  不显示行号

      :命令  执行该命令

      :整数  跳转到该行

    o、i、a都可以进入输入模式。


     配置主机名称

      红帽RHEL7系统的主机名称保存在/etc/hostname文件中,修改主机名为"studyRHEL7"。

      (1)vim /etc/hostname

      (2)进入编辑模式,将旧的名字修改为新名字。

       (3)保存退出,使用命令hostname查看是否修改成功。

       注意普通用户需要用sudo执行。


     

    配置网卡信息

      RHEL6系统的网卡配置文件的前缀为"eth",第一块为"eth0",第二块为"eth1",以此类推。

      RHEL7系统的网卡配置文件的前缀为"ifcfg-eno",例如"ifcfg-eno123"。

      网卡配置文件存放在/etc/sysconfig/network-scripts目录中。

    关键词术语:

      网卡类型:TYPE=Ethernet

      地址分配模式:BOOTPROTO=static  或者dhcp

      网卡名字:NAME=eno123

      是否启动:ONBOOT=yes

      IP地址:IPADDR=192.168.1.10

      子网掩码:NETMASK=255.255.255.0

      网关地址:GATEWAY=192.168.1.1

      DNS地址:DNS1=192.168.1.1

           DNS2=192.168.1.2

    重新启动网卡命令:systemctl restart network。

    使用ping命令证明网卡配置正确,并是否生效了。

     


     

      

     

     

      

    转载于:https://www.cnblogs.com/gyfluck/p/9267090.html

    展开全文
  • 动词不定式与动名词在用法上的一些比较本次英语语法专题我们学习“动词不定式与动名词在用法上的一些比较”,具体内容如下:1)可以接动词不定式或动名词的动词或短语动词常见:love,like,hate,prefer,...

    动词不定式与动名词在用法上的一些比较

    本次英语语法专题我们学习“动词不定式与动名词在用法上的一些比较”,具体内容如下:

    1)可以接动词不定式或动名词的动词或短语动词

    常见的有:love,like,hate,prefer,dislike,intend,attempt,propose,want,need,remember,forget,regret,neglect,try,deserve,omit,dread,decline,commence,scorn,delay,loathe,can't bear等。某些这类词的两种接续在意义几乎没有区别。

    2)动名词和动词不定式在表示动作和时间等方面的差别

    一般来说,动名词表示一般习惯,抽象概念,泛指已成为过去的动作,时间概念不强,不是某一次动作。而动词不定式所表示的动作则往往是具体的或特定的动作,或是现在或将来的动作。

    ①I like goingballooning.

    (泛指)我喜欢乘气球。

    152b6d3a9693c720aee4df3cff425f23.png

    They like to goballooning at weekends.

    (特指)他们周末喜欢乘气球玩。

    ②I prefer to keepclear of town during the rush-hour.

    (特指)我不愿意在交通拥挤的时间去市区。

    I prefer stayingindoors when the weather is cold.

    (泛指)天冷时我喜欢呆在屋内。

    3)在begin,start,continue,cease等词后用动名词还是动词不定式

    在动词begin,start,continue,cease,intend,bother,omit等后面跟动名词或是动词不定式,含义并无大的区别;但如果表示有意识地“开始或停止做某事”多用动名词,而不定式则表示情况发生变化。

    The days start to lengthenin March.

    三月份白昼开始变化。

    We need to start discussingpracticalities.

    我们需要着手讨论实际问题。

    Let's begin doingthe job from now on.

    我们从现在开始做这项工作吧。

    He refused to prophesywhen the economy would begin to improve.

    他拒绝推测经济在何时开始好转。

    4)动词不定式和动名词的逻辑主语

    动词不定式的逻辑主语常是句子主语或句中的某个词,而动名词的逻辑主语可能是句子主语或句子中的某个词,也可能是泛指一般人,在句子里是找不到的。

    I hate to go there alone.

    我不愿意一个人去那儿。(自己去)

    I hate splitting in the streets.

    我不喜欢随地吐痰。(可以指自己,也可能指别人)

    5)有些动词或短语后面跟动词不定式和跟动名词所表示的意义完全不同,有时甚至相反

    这类动词如stop,quit,leave off,remember,forget,regret,try,want,can't,help,mean,cease,scorn,propose,deserve,learn,go on,chance等。

    I try to setaside a few minutes each day to do some exercises.

    我每天尽量腾出一些时间锻炼一下身体。

    This new order will mean workingovertime.

    这一新订单意味着(我们)得加班加点。

    Remember to getin some beers for this evening party!

    记住为今日的晚会买些啤酒!

    0ed0b7968382050736eb853df6ef71ea.png

    I tried liftingit but failed.

    我试着举起它来,但最终失败了。

    6)动名词和动词不定式作逻辑宾语

    动名词和动词不定式可以作逻辑宾语,用it充当形式宾语。不定式作逻辑宾语极为普遍。例如:

    I find itdifficult to finish the job before 5.

    我觉得五点之前完成工作有点困难。

    She considers itimpossible to master a foreign language in a month.

    她觉得不可能在一个月的时间内掌握一门外语。

    但动名词作逻辑宾语只限于少数句型,一般用在useless,worthwhile,senseless,fun,no use,no good,any good,a bore,a waste of time等后。其中worthwhile后用动名词或不定式作逻辑宾语均可。

    He found it no good sayingthat again and again.

    他发现一次次地说那件事没什么用处。

    她认为帮助有需要的人是值得的。

    ①She thinks it worthwhile helpingthose in need.

    ②She thinks it worthwhile to helpthose in need.

    以上就是本次专题“动词不定式与动名词在用法上的一些比较”的内容结合例句学习语法更容易!

    猜你喜欢的!

    学英语必知的五大基本句型是什么?

    英语阅读能力提升第一步:理解五大基本句型

    学霸总结的英语常见5大句型,一目了然

    展开全文
  • NAT技术的定义: NAT是一种网络地址翻译技术,将内部私有IP地址改变成可以在公网上使用的:公网IP。 NAT技术出现的原因: ...1 名词解释 公有IP地址:也叫全局地址,是指合法的IP地址,它是由NIC(网络信息中心...
  • 网站索引量:站点中多少页面可以作为搜索候选结果,也就是蜘蛛抓取了网站的哪些页面并认可可以进入搜索引擎数据库被收录;网站验证了百度站长平台,就可以在里面看到网站的索引量,数据较为真实; 总结:网站收录...
  • http://ask.yygrammar.com/q-28520.html点击以上链接为你解答如下:(1)接动名词(不接不定式)作宾语的常用动词如下admit doing sth. 承认做某事advise doing sth. 建议做某事allow doing sth. 允许做某事appreciate ...
  • 网站索引量:站点中多少页面可以作为搜索候选结果,也就是蜘蛛抓取了网站的哪些页面并认可可以进入搜索引擎数据库被收录;网站验证了百度站长平台,就可以在里面看到网站的索引量,数据较为真实;总结:网站收录是...
  • 现如今会上如果不说两句大数据、云计算、区块链、边缘计算等名词,就感觉被时代抛弃一样。那今天我们主要为大家讲解下什么...在做大数据可视化时,有哪些常见得到数据分析模型。  那么什么是大数据呢?...
  • 商业模式有哪些?

    2017-05-22 12:10:25
    C2C,每天看着这些常见又陌生的名词,如果人跟你说让你解释它的含义,金融的小伙伴们是不是瞬间石化了,是不是欲言又止了,哑口无言了,它的概念意义你真的懂吗?来吧,跟着小编一起来真正的了解下它们的含义和区别...
  • 常见的区块链骗局有哪些? 1、发币,和币相关投资项目 上当受骗这件事不分人群,只会因为见闻多少决定你会不会更容易被骗。没怎么读过书的人可能听不懂你嘴里的区块链、去中心化这些高大上的概念名词,但是说不准...
  • GPIO,是工控机中比较不太常见的一个名词,最近呢,也是好多客户在咨询这方面的知识,所以今天就来给大家分享一下工控机中的GPIO。 首先,什么是GPIO? 定义:通用输入、输出模块。多数用于嵌入式工控机中,是一种...
  • 深入研究语言的人称为语言学家,而“计算语言学家”这个专有名词适用于应用计算研究语言处理的人。从本质上讲,计算语言学家是深入了解语言的计算机科学家,计算语言学家可以运用计算技能,对语言的不同方面进行建模...
  • 摘要: 关于CDN常见名词有哪些?这里列举了一些基本名词,如果你有补充,欢迎在下方留言。 Origin Server源站 做 CDN 之前的客户真正的服务器。 User 访问者,也就是要访问网站的网民。 Last ...
  • 并且能够更有效率的把单词记起来,今天一起来了解一下英文中有哪些常见的否定前缀。Dis-'Dis'这个前缀的表达的意思就是“不......”在动词及名词前都可以看到Dislike like是喜欢,那么dislike就是“不喜欢”的意思...
  • 软件开发过程中软件各项...一、软件测试类型有哪些? 1. 按照代码可见程度 测试行业人们比较熟悉的名词大概就是黑盒测试、白盒测试、灰盒测试了。这也是根据软件产品代码的可见程度来进行区分的。黑盒测试就是指专注于
  • 工业机器人目前应用的范围越来越广泛,在制造行业中,许多种不同用途的工业机器人参与生产,为企业带来了更多的效益和便捷,在工业生产中最常见的就是四轴工业机器人和六轴工业机器人。轴与卡迪尔坐标工业机器人的...
  • 什么是后门,有哪些后门 后门在安全测试中的实际意义 关于后门需要了解哪些 WEB WEB的组成架构模型 架构漏洞安全测试简要介绍 为什么从WEB层面为主为首 WEB相关安全漏洞 WEB源码类对应漏洞 WEB中间件对应...
  • 如今的LED显示屏更是广泛应用在各行各业,然而对于新手来说,LED显示屏的很多专业术语都是不了解的,那么究竟LED显示屏常见的专业术语有哪些呢?本文将为读者介绍。
  • Spring常见面试题整理

    2020-07-17 22:51:11
    3、Spring有哪些主要模块?4、介绍一下SpringIOC,使用IOC有什么好处?5、SpringIOC创建对象的方式有哪些?6、SpringIOC的三种注入方式分别是什么?7、介绍一下Spring AOP。8、Spring AOP中的几个名词解释。9、介绍...
  • 想要从事互联网营销的朋友,那么有一些常见名词是不可不记,具体有哪些常见名词呢? CTR (Click Through Rate):点击率 具体公式:CTR=点击量/展现量 运营人员用来分析广告投放创意的质量,如果点击率较低,说明...
  • 搞web离不开security这个话题,之前关注的也不多只是听说一些名词什么的。...根据Cenzic 2012年的报告看一下都有哪些常见攻击。 37% Cross-site scripting 16% SQL injection 5% Path disclosure 5% Denial-o...
  • 问题4-23:“尽最大努力交付”(best effort delivery)都有哪些含义? 问题4-24:假定在一个局域网中计算机A发送ARP请求分组,希望找出计算机B的硬件地址。这时局域网上的所有计算机都能收到这个广播发送的ARP请求...
  • http服务端架构演进

    千次阅读 2019-10-20 20:44:18
    摘要 ...一些常见名词到底是什么含义呢?...都有哪些负载均衡的方式 服务端演进 在前面文章中我们介绍过最简单的一种客户端-服务端响应模式,如下 这是http服务最简单的一种形式,服务端就一层web服务...
  •  下面就来给大家介绍一下常见名词以及它代表的含义。 1、哪些规格影响IPC图像效果? 在介绍各个名词之前,大家必要了解影响摄像机图像效果的几个重要因素,也正是这些硬件/软件因素的差异化,才图像效果...
  • 但关于心脏供血不足有哪些内容,需要怎样治疗?需要怎样确诊,估计很多人都会很迷茫,或者也仅仅是一知半解。作为心内科医生的我,心电图也显示心肌供血不足,面对如此多的心脏供血不足,我们该怎样去处理和面对呢?...
  • 17、JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么? 90 18、MVC的各个部分都有那些技术来实现?如何实现? 90 19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种...
  • JVM总结

    2020-03-08 20:11:10
    JVM常见的调优参数有哪些? 内存快照如何抓取,怎么分析Dump文件? 谈谈JVM中,类加载器你的认识 常见名词 JVM的位置 JVM的体系结构 类加载器 双亲委派机制 沙箱安全机制 Native PC寄存器 方法区 栈 堆 三种JVM ...

空空如也

空空如也

1 2 3 4 5 6
收藏数 104
精华内容 41
关键字:

常见名词有哪些