问:它们仅用于document.write吗?没有它们,document.write本身不会全部工作吗?如果使用document.write是一种不好的做法,那是否意味着open()和close()没有好的用例?
答:从服务器的角度
有趣的问题。所有这些功能都使用大多数开发人员都熟悉的语法。通常,您会像这样使用它们。
//首先打开文档流以编写命令。
文件。打开();
//写一些文档。写('<h1>网页</ h1>' ); //您可以继续发送更多写入文档。写('<p> Hello world!</ p>' ); //关闭流,使其呈现到浏览器。文件。close ();
不要在此引用我的信息,但我相信前端会受到后端的影响。我们之所以使用此系统,是因为它遵循与服务器发送网页相同的步骤。
网页首先会被分成成吨的数据包.write()。
他们每个人都被发送并采取最快的路径。
数据包以任何顺序到达。
一旦所有数据包到达,原始消息将重新组合并呈现网页.close()。
没有write和close,我们可能会盲目地将页面放错顺序。数据包在中断页面的位置上也不遵循任何规则。它可能在src属性的中间,然后您有未加载的图像。
从前端角度
Document.write没有open和仍然可以工作close。写入将 在需要时自动打开和关闭流。因此,忘记上面刚刚看到的所有内容。然而,问题是写行为不同,这取决于当它被称为:
页面是否完成。清除身体。附加消息。
如果页面正在加载。将消息追加到正文末尾。
我发现write它适合测试快速的脏东西,但不适用于完善的代码。例如, Firefox不会自动调用关闭。因此,请谨慎使用。