zoukankan      html  css  js  c++  java
  • 初识ajax

    无刷新获取数据。

    把这句话解释如下:

    本地客户端可以在不进行刷新操作的情况下得到来自服务器的数据。

    问题是刷新是什么?全局刷新才算刷新吗?本质上只要有事物发生改变都是“不一样的”,“新的”,就可以叫做刷新,刷新强调的就是改变。

    由此我提出一个想法:

    整体页面不需要都改变,只需要部分发生改变就行了。

    所以本质上是:

    如果把一整个页面当做一个整体元素来看待,而组成这个整体的部分当做局部元素,那么当我们需要此页面的局部发生改变而剩下的不变,我们就需要用到某种相关技术。

    而这个技术的名字和这个技术本身的实现方式和特点没有任何关系,单纯是采用了经典的“取每个单词的首字母组成”的方法:
    asyncronous  javascript  and  xml

    简称:ajax。

    所以无刷新获取数据这句话一定是错的

    整体是由局部组成的,局部发生改变,整体一定会改变。

    那么不变的是什么?假设把整体分成两部分,a和b,ab组成的这个整体叫做c。

    现在a发生改变,那么c也相继发生改变,但是b不变。

    不变的是b,放在本文中,换句话就是说b部分没有刷新。

    但是这句话的主角是浏览器,是客户端,客户端接收数据。

    而页面发生改变,主角是页面。

    结果本身就很简单:浏览器向服务器请求数据,服务器响应请求并发送数据给浏览器,浏览器接收数据,页面发生改变

    所以如果想表现使用ajax技术后产生的结果,就应该分开讨论:

    1. 浏览器正常接收数据
    2. 页面局部刷新,其余部分不变

    我其实不喜欢在文字上花费太多功夫,但是既然选择了用文字来表达事物,就应该表达清楚,而不是为了图省事,乱起名字,乱组合概念。

    这种做法和读者无关,是作者自己在欺骗自己罢了。 

  • 相关阅读:
    try-with-resources优先于try-finally
    创建和销毁对象——避免创建不必要的对象
    创建和销毁对象——用私有构造器或者枚举类型强化Singleton属性
    创建和销毁对象——遇到多个构造器参数时考虑使用构建器
    创建和销毁对象——用静态工厂方法代替构造器
    计算机网络物理层——数据通信的基础知识
    多线程——线程交互
    多线程——同步问题
    Percona Monitoring and Management (PMM)
    Docker
  • 原文地址:https://www.cnblogs.com/flyover/p/14088742.html
Copyright © 2011-2022 走看看