document.write与writeln的输出内容区别说明

转载  更新时间:2010年10月24日 15:47:07   作者:   我要评论

document.write()和document.writeln都是JavaScript向客户端写入的方法,writeln是以行方式输出的,但并不是指页面实际效果中的换行,两种方法在查看源代码时才看得出区别。
document.write() //将内容写入文档,当前编辑位置为写入的内容的后一个字符
document.writeln() //将内容写入文档,并添加一个换行符,当前编辑位置为写入的内容的后一行

document.write()和document.writeln都是JavaScript向客户端写入的方法,writeln是以行方式输出的,但并不是指页面实际效果中的换行,两种方法在查看源代码时才看得出区别,除非是输出到pre或xmp元素内

测试一下:

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

运行上面的代码,在新开的窗口中:查看-源文件,就可以看到,writeln是以行方式输出

实际效果的区别在于:源代码中的换行,会导致实际效果中的一个“空格”对比以下例子来体会:

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

输入结果其实是:111 222

所以在应用中,使用write会比writeln更为方便,不会产生不必要的空格效果,所以我的Html与Js在线互转小工具[//www.jb51.net/tools/html-js.htm]特地将网上大多数使用writeln的方式改为write,相信会给大家带来方便。

关于保留格式,测试一下:

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]


document.write()和document.writeln()的区别 + 用js写动态select

解决思路:

两者都是JavaScript向客户端输出的方法,对比可知写法上的差别是一个ln--line的简写,换言之,writeln 方法是以行输出的,相当于在?winte?输出后加上一个换行符。

注意:document.write方法可以用在两方面:在网页载入过程中用实时脚本创建网页内容以及用延时脚本创建本窗口或新窗口的内容.该方法需要一个字符串参数,它是写到窗口或框架中的HTML内容.该字符串参数可以是变量或值为字符串的表达式,写入内容常常包含HTML标记.

记住,载入网页后,浏览器输出流将自动关闭.在些之后任何一个对当前网页的document.write()方法都将打开一个新的输出流,它将清除当前网页输出内容(包括源文档中的任何变是和值).因此,如果希望用脚本生成的HTML内容替换当前网页,就必须把HTML内容连接起来赋给一个变量.这里,使用document.write()来完成写操作.不必清除文档并打开一个新的数据流,一个document.write()调用就OK了.

关于document.write()方法,还需要说明它的相关方法document.close().脚本向窗口(不管是本窗口还是其它窗口)写完内容后必须关闭输出流.在脚本的最后一个document.write() 方法后面.必须确保有document.close()方法.不这样做就不能显示图像和表单.而且,后面调用的任何document.write() 只会将内容追加到网页后,而不会清除现有内容,写入新值

具体步骤:

1.打开一个空白窗口。
window.open()

2.用 write 方法向空白窗口写入代码。

document.write("Line1")
document.write("Line1")

3.用 writeln 方法向空白窗口写入代码。

document.writeln("Line1")
document.writeln("Line2")

4.完整代码示例:

复制代码 代码如下:

<script>
with(window.open()){
document.write("Line1")
document.write("Line1")
document.writeln("Line1")
document.writeln("Line2")
}
</script>


注意:两种方法仅当在查看源代码时才看得出区别。
特别提示:把上面的代码加入网页中,然后查看弹出窗口的源代码,将会看到:

Line1Line1Line1
Line2

页面效果和源代码如图。




特别说明

总的来说,一般情况下用两种方法输出的效果在页面上是没有区别的(除非是输出到pre或xmp元素内)。

二、document.write()向指定位置写html

页面初始化时可以正确写在select框内
但调用时就写在控件外了 ,不知道document.write()能否想改变innerHTML或outerHTML来动态写HTML?以及写的HTML要用来显示该如何处理?

如下:

复制代码 代码如下:

<html>
<head></head>
<script type="text/javascript">
function creatOption(){
for(i=0;i<5;i++)
document.write("<option value='"+i+"'>"+i+"</option>");
}
function openWrite(){
var win=window.open();
win.document.write("Line1");
win.document.write("Line1");
win.document.write("<input type='text' value='1234567890' />");
win.document.writeln("Line1");
win.document.writeln("Line2");
}
</script>
<body>
<select id="myselect" name="myselect">
<script language="javascript">
creatOption();
</script>
</select>
<input type="button" value="按钮" onclick="openWrite()"/>
</body>
</html>


关于保留格式,测试一下:<script> document.write("<pre>我在pre中不会换行!")document.write("我在pre中不会换行!")document.writeln("我在pre中会换行!")document.writeln("我在pre中会换行!")document.writeln("我在pre中会换行!</pre>") </script>

相关文章

  • 从零学JSON之JSON数据结构

    从零学JSON之JSON数据结构

    这篇文章主要介绍了JSON数据结构的相关知识,需要的朋友可以参考下
    2014-05-05
  • JavaScript For 循环

    JavaScript For 循环

    JavaScript For 循环...
    2007-04-04
  • 客户端脚本中常常出现的一些问题和调试技巧

    客户端脚本中常常出现的一些问题和调试技巧

    客户端脚本中常常出现的一些问题和调试技巧...
    2007-01-01
  • JavaScript全局函数使用简单说明

    JavaScript全局函数使用简单说明

    JavaScript下比较常用的一些字符处理等函数,学习js的朋友经常用得到。
    2011-03-03
  • javascript实现滑动解锁功能

    javascript实现滑动解锁功能

    这篇文章主要介绍了javascript实现滑动解锁功能的方法及示例,效果非常棒,需要的朋友可以参考下
    2014-12-12
  • JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发基础小结

    JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等j

    这篇文章主要介绍了JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发中基础的知识点,并通过举例详细解释了JavaScript定义的数据类型、无第三变量交换值、/和%运算符、Memoization技术、闭包等知识,需要的朋友可以参考下
    2017-08-08
  • javascript 函数介绍

    javascript 函数介绍

    在JavaScript中,定义函数最常用的方法就是调用function语句。该语句是由function关键字构成的,也是很重要的函数复用。
    2009-09-09
  • Three.js源码阅读笔记(Object3D类)

    Three.js源码阅读笔记(Object3D类)

    Object3D似乎是Three.js框架中最重要的类,相当一部分其他的类都是继承自Object3D类,比如场景类、几何形体类、相机类、光照类等等:他们都是3D空间中的对象,所以称为Object3D类,需要了解的朋友可以参考下
    2012-12-12
  • 详解JS-- 浮点数运算处理

    详解JS-- 浮点数运算处理

    本篇文章主要介绍了JS--浮点数运算处理,现在分享给大家,也给大家做个参考。感兴趣的小伙伴们可以参考一下。
    2016-11-11
  • 关于JavaScript中string 的replace

    关于JavaScript中string 的replace

    在使用JavaScript对字符串进行处理的时候我们经常会用到replace方法,很简单的一个方法,以前一直不以为意,直到今天看JavaScript语言精粹的时候读到了一个有趣的小例子的时候,并不是十分理解,了解了一下replace的用法才明白,原来replace不像想象中的那么简单
    2013-04-04

最新评论