繁体   English   中英

缓冲和非缓冲代码有什么区别?

[英]What is the difference between buffered and unbuffered code?

这个文档令人困惑。

它说,无缓冲的代码不会直接输出任何代码。 那是什么意思?

但总的来说,缓冲和非缓冲代码之间有什么区别?

如果他们没有禁用复制并右键单击页面也会很好!

“无缓冲”表示代码已执行,但结果发送到输出缓冲区。

“Buffered” 意味着代码被执行,结果发送到输出缓冲区。

例如,这个玉:

.unbuffered
  - 'unbuffered vs buffered'

.buffered
  = 'unbuffered vs buffered'

生成此HTML:

<div class="unbuffered">
</div>
<div class="buffered">unbuffered vs buffered
</div>

请忽略此答案,因为它在评论中指出是不正确的

我邀请你来看看matty的答案。


根据我在您分享的文档链接中的理解,我会说有一个主要区别:


读取时不执行未缓冲的代码,但是延迟(看起来像javascript),这意味着字符串是后处理的。

看起来他们将字符串映射到内部例程,即混合js +模板语言。


另一方面, 缓冲代码作为javascript执行(首先它被预处理以逃避html)。 虽然它根据你放在那里的代码似乎有不同的行为。

例如,据说:

p='Test' + ' concatenation'

将导致Test concatenation

但现在,你可以这样做:

p=(function() { return 'Does this really work ?! It seems so'; }())

这将导致Does this really work ?! It seems so Does this really work ?! It seems so

它只是简化了你的代码并逃脱了html。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM