0% found this document useful (0 votes)
6 views50 pages

Javascript Programmer S Reference 1St Ed. Edition Valentine Download PDF

The document provides information about the 'JavaScript Programmer's Reference' 1st edition by Jonathan Reid and Thomas Valentine, including details on its content, structure, and authors. It offers a comprehensive guide to JavaScript, covering basics, DOM manipulation, and various programming techniques. Additionally, it includes links to download the book and other related programming references from ebookultra.com.

Uploaded by

gtbmssxwdv193
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views50 pages

Javascript Programmer S Reference 1St Ed. Edition Valentine Download PDF

The document provides information about the 'JavaScript Programmer's Reference' 1st edition by Jonathan Reid and Thomas Valentine, including details on its content, structure, and authors. It offers a comprehensive guide to JavaScript, covering basics, DOM manipulation, and various programming techniques. Additionally, it includes links to download the book and other related programming references from ebookultra.com.

Uploaded by

gtbmssxwdv193
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 50

JavaScript Programmer s Reference 1st ed.

Edition
Valentine download pdf

https://ebookultra.com/download/javascript-programmer-s-reference-1st-
ed-edition-valentine/

Visit ebookultra.com today to download the complete set of


ebook or textbook!
Here are some recommended products for you. Click the link to
download, or explore more at ebookultra.com

VBScript programmer s reference 3rd ed Edition Adrian


Kingsley-Hughes

https://ebookultra.com/download/vbscript-programmer-s-reference-3rd-
ed-edition-adrian-kingsley-hughes/

Excel 2007 VBA Programmer s Reference Programmer to


Programmer 1st Edition John Green

https://ebookultra.com/download/excel-2007-vba-programmer-s-reference-
programmer-to-programmer-1st-edition-john-green/

Visual Basic 2008 Programmer s Reference Rod Stephens

https://ebookultra.com/download/visual-basic-2008-programmer-s-
reference-rod-stephens/

Access 2007 VBA Programmer s Reference 1st Edition Teresa


Hennig

https://ebookultra.com/download/access-2007-vba-programmer-s-
reference-1st-edition-teresa-hennig/
Professional JavaScript Frameworks Prototype YUI ExtJS
Dojo and MooTools Wrox Programmer to Programmer 1st
Edition Leslie M. Orchard
https://ebookultra.com/download/professional-javascript-frameworks-
prototype-yui-extjs-dojo-and-mootools-wrox-programmer-to-
programmer-1st-edition-leslie-m-orchard/

JavaScript a beginner s guide 3rd ed Edition Pollock

https://ebookultra.com/download/javascript-a-beginner-s-guide-3rd-ed-
edition-pollock/

WPF Programmer s Reference Windows Presentation Foundation


with C 2010 and NET 4 1st Edition Rod Stephens

https://ebookultra.com/download/wpf-programmer-s-reference-windows-
presentation-foundation-with-c-2010-and-net-4-1st-edition-rod-
stephens/

JavaScript Creativity Exploring the Modern Capabilities of


JavaScript and HTML5 1st ed. Edition Hudson

https://ebookultra.com/download/javascript-creativity-exploring-the-
modern-capabilities-of-javascript-and-html5-1st-ed-edition-hudson/

Beginning JavaScript 3rd ed Edition Paul Wilton

https://ebookultra.com/download/beginning-javascript-3rd-ed-edition-
paul-wilton/
JavaScript Programmer s Reference 1st ed. Edition
Valentine Digital Instant Download
Author(s): Valentine, Thomas, Reid, Jonathan
ISBN(s): 9781430246299, 1430246294
Edition: 1st ed.
File Details: PDF, 2.82 MB
Year: 2013
Language: english
JavaScript Programmer’s
Reference

Jonathan Reid
Thomas Valentine

Apress
JavaScript Programmer’s Reference
Copyright © 2013 by Jonathan Reid and Thomas Valentine
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material
is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting,
reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval,
electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.
Exempted from this legal reservation are brief excerpts in connection with reviews or scholarly analysis or material
supplied specifically for the purpose of being entered and executed on a computer system, for exclusive use by the
purchaser of the work. Duplication of this publication or parts thereof is permitted only under the provisions of the
Copyright Law of the Publisher’s location, in its current version, and permission for use must always be obtained from
Springer. Permissions for use may be obtained through RightsLink at the Copyright Clearance Center. Violations are
liable to prosecution under the respective Copyright Law.
ISBN 978-1-4302-4629-9
ISBN 978-1-4302-4630-5 (eBook)
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every
occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion
and to the benefit of the trademark owner, with no intention of infringement of the trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified
as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of publication, neither
the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may
be made. The publisher makes no warranty, express or implied, with respect to the material contained herein.
President and Publisher: Paul Manning
Lead Editor: Ben Renow-Clarke
Technical Reviewers: RJ Owen
Editorial Board: Steve Anglin, Mark Beckner, Ewan Buckingham, Gary Cornell, Louise Corrigan, Morgan Ertel,
Jonathan Gennick, Jonathan Hassell, Robert Hutchinson, Michelle Lowman, James Markham,
Matthew Moodie, Jeff Olson, Jeffrey Pepper, Douglas Pundick, Ben Renow-Clarke, Dominic Shakeshaft,
Gwenan Spearing, Matt Wade, Tom Welsh
Coordinating Editor: Christine Ricketts
Copy Editors: William McManus and Mary Bearden
Compositor: SPi Global
Indexer: SPi Global
Artist: SPi Global
Cover Designer: Anna Ishchenko
Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor,
New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail [email protected], or visit
www.springeronline.com Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science +
Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation.
For information on translations, please e-mail [email protected], or visit www.apress.com.
Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional use. eBook versions
and licenses are also available for most titles. For more information, reference our Special Bulk Sales–eBook Licensing
web page at www.apress.com/bulk-sales.
Any source code or other supplementary materials referenced by the author in this text is available to readers at
www.apress.com. For detailed information about how to locate your book’s source code, go to
www.apress.com/source-code/.
For Mom and Dad, who have always been there for me.
—Jon Reid

For my Rock, my Mother


—Thomas Valentine
Contents at a Glance

About the Authors............................................................................................................... xv


About the Technical Reviewer .......................................................................................... xvii
Introduction ....................................................................................................................... xix

N Chapter 1: JavaScript Basics ............................................................................................1


N Chapter 2: JavaScript Nuts and Bolts..............................................................................25
N Chapter 3: The DOM .........................................................................................................57
N Chapter 4: JavaScript in Action .......................................................................................87
N Chapter 5: JavaScript Global Objects Reference ...........................................................133
N Chapter 6: JavaScript Control Statements Reference ...................................................185
N Chapter 7: JavaScript Operators Reference ..................................................................195
N Chapter 8: The DOM Reference ......................................................................................209

Index .................................................................................................................................269

v
Contents

About the Authors............................................................................................................... xv


About the Technical Reviewer .......................................................................................... xvii
Introduction ....................................................................................................................... xix

N Chapter 1: JavaScript Basics ............................................................................................1


Hard to Learn, Harder to Love .......................................................................................................1
What Is JavaScript?.......................................................................................................................2
The Evolution of JavaScript and the ECMA-262 Standard ..................................................................................... 3
JavaScript Implementations .................................................................................................................................. 3

Web Browsers and JavaScript ......................................................................................................4


JavaScript in Web Pages ....................................................................................................................................... 5

Brief Digression: Understanding and Running Examples ..............................................................7


Running the Examples ........................................................................................................................................... 7

JavaScript’s Three Difficult Features.............................................................................................8


Prototypal Inheritance ........................................................................................................................................... 8
Scoping in JavaScript .......................................................................................................................................... 11
One of Those Weak Types, Eh? ............................................................................................................................ 16

Putting It Together: Two Common Patterns .................................................................................20


Immediately Executing Function Expressions ..................................................................................................... 21
The Module Pattern ............................................................................................................................................. 22

Summary .....................................................................................................................................23

vii
N CONTENTS

N Chapter 2: JavaScript Nuts and Bolts..............................................................................25


Formatting JavaScript Code ........................................................................................................25
Relying on ASI ...................................................................................................................................................... 26
Be Consistent....................................................................................................................................................... 27

Expressions and Statements .......................................................................................................27


Expressions ......................................................................................................................................................... 27
Statements .......................................................................................................................................................... 28

Operators.....................................................................................................................................29
Precedence .......................................................................................................................................................... 30

Variables......................................................................................................................................32
Declaring Variables in JavaScript ........................................................................................................................ 32
Understanding Variable Scope in JavaScript ....................................................................................................... 33
Managing Variables in JavaScript ....................................................................................................................... 35
Objects ........................................................................................................................................37
Inheritance........................................................................................................................................................... 37
Accessing Properties and Enumeration ............................................................................................................... 37
Creating Objects .................................................................................................................................................. 39

Arrays ..........................................................................................................................................41
Dynamic Length ................................................................................................................................................... 41
Accessing and Assigning Values.......................................................................................................................... 41
Creating Arrays .................................................................................................................................................... 42

Functions.....................................................................................................................................45
Function Declarations .......................................................................................................................................... 45
Function Expressions........................................................................................................................................... 46

Conditionals.................................................................................................................................51
if Statements ....................................................................................................................................................... 51
switch Statements ............................................................................................................................................... 52

viii
N CONTENTS

Loops ...........................................................................................................................................53
for Loops.............................................................................................................................................................. 53
for-in Loops ......................................................................................................................................................... 54
while Loops ......................................................................................................................................................... 55
do Loops .............................................................................................................................................................. 55

Summary .....................................................................................................................................56

N Chapter 3: The DOM .........................................................................................................57


How I Learned to Stop Worrying and Love the DOM....................................................................57
History of the DOM Standard .......................................................................................................58
Browser Dependencies ...............................................................................................................60
DOM Structure .............................................................................................................................60
Accessing Elements in the DOM .................................................................................................62
Traversing the DOM ............................................................................................................................................. 65

Modifying the DOM ......................................................................................................................66


Modifying Existing Elements ............................................................................................................................... 66
Creating New Elements ....................................................................................................................................... 70
Deleting Elements................................................................................................................................................ 72

DOM Events .................................................................................................................................72


Event Phases ....................................................................................................................................................... 73
Event Execution Context ...................................................................................................................................... 73
Different Events ................................................................................................................................................... 73
Binding Event Handlers ....................................................................................................................................... 74
Unbinding Event Handlers ................................................................................................................................... 75
The Event Object.................................................................................................................................................. 76
Event Delegation.................................................................................................................................................. 78
Manually Firing Events ........................................................................................................................................ 79
Custom Events ..................................................................................................................................................... 83
Cross-Browser Strategies.................................................................................................................................... 85
Summary .....................................................................................................................................86

ix
N CONTENTS

N Chapter 4: JavaScript in Action .......................................................................................87


Working with JavaScript .............................................................................................................87
JavaScript IDEs .................................................................................................................................................... 88
Browsers ............................................................................................................................................................. 90
Web Servers ........................................................................................................................................................ 92
JavaScript Development Workflow ...................................................................................................................... 93
Breakpoints ......................................................................................................................................................... 95

Loading Scripts Efficiently...........................................................................................................95


How Browsers Download and Process Content................................................................................................... 96
Optimization Tip #1: Load Scripts at the End of the Document ........................................................................... 97
Optimization Tip #2: Combine, Minify, and GZip ................................................................................................. 100
Optimization Tip #3: Load Scripts In the Document Head Using a Non-Blocking Technique ............................. 101
Optimization Tip #4: Moderation is Good ........................................................................................................... 103

Asynchronous Communication using XMLHttpRequest ............................................................103


How It Works...................................................................................................................................................... 103

Cross Domain Techniques .........................................................................................................108


Server-side proxy .............................................................................................................................................. 108
JSONP ................................................................................................................................................................ 108
CORS.................................................................................................................................................................. 111
Post Message .................................................................................................................................................... 111

Data Caching .............................................................................................................................112


JavaScript Libraries and Frameworks.......................................................................................115
Choosing a Library ............................................................................................................................................. 115

Using jQuery ..............................................................................................................................118


How It Works...................................................................................................................................................... 118
Events in jQuery................................................................................................................................................. 121
jQuery UI ............................................................................................................................................................ 124
jQuery Mobile .................................................................................................................................................... 124

Building a Library ......................................................................................................................126


Summary ...................................................................................................................................132

x
N CONTENTS

N Chapter 5: JavaScript Global Objects Reference ...........................................................133


Array ..........................................................................................................................................133
Array Properties ................................................................................................................................................. 135
Array Methods ................................................................................................................................................... 135

Boolean .....................................................................................................................................140
Boolean Methods ............................................................................................................................................... 141

Date ...........................................................................................................................................142
Date Methods .................................................................................................................................................... 142

Math ..........................................................................................................................................159
Math Properties ................................................................................................................................................. 160
Math Methods.................................................................................................................................................... 160
Number......................................................................................................................................166
Number Properties ............................................................................................................................................ 166
Number Methods ............................................................................................................................................... 166

RegExp ......................................................................................................................................168
RegExp Properties ............................................................................................................................................. 168
RegExp Methods ................................................................................................................................................ 170

String .........................................................................................................................................171
String Properties................................................................................................................................................ 172
String Methods .................................................................................................................................................. 172

Miscellaneous Global Variables and Functions .........................................................................179


Variables ............................................................................................................................................................ 179
Functions ........................................................................................................................................................... 182

Summary ...................................................................................................................................184

N Chapter 6: JavaScript Control Statements Reference ...................................................185


Introduction ...............................................................................................................................185
break .........................................................................................................................................185
continue ....................................................................................................................................186
do/while ....................................................................................................................................187

xi
N CONTENTS

for and for/in .............................................................................................................................187


for ...................................................................................................................................................................... 187
for/in .................................................................................................................................................................. 188

if ................................................................................................................................................188
label...........................................................................................................................................189
return ........................................................................................................................................190
switch/case ...............................................................................................................................190
while..........................................................................................................................................192
with ...........................................................................................................................................192
Summary ...................................................................................................................................193

N Chapter 7: JavaScript Operators Reference ..................................................................195


Assignment Operators ...............................................................................................................195
Comparison Operators...............................................................................................................196
Strict Comparisons ............................................................................................................................................ 197
Coerced Comparisons........................................................................................................................................ 198

Arithmetic Operators .................................................................................................................198


Bitwise Operators ......................................................................................................................199
A Bit About Binary Numbers .............................................................................................................................. 199

Logical Operators ......................................................................................................................200


String Operator ..........................................................................................................................201
Miscellaneous Operators ...........................................................................................................201
Conditional Operator .......................................................................................................................................... 201
Comma Operator ............................................................................................................................................... 202
delete Operator .................................................................................................................................................. 202
function Operator............................................................................................................................................... 203
get Operator....................................................................................................................................................... 203
in Operator ......................................................................................................................................................... 204
instanceof Operator ........................................................................................................................................... 204

xii
N CONTENTS

new Operator ..................................................................................................................................................... 205


set Operator ....................................................................................................................................................... 205
typeof Operator .................................................................................................................................................. 206
void Operator ..................................................................................................................................................... 207

Summary ...................................................................................................................................207

N Chapter 8: The DOM Reference ......................................................................................209


Browser Support .......................................................................................................................209
DOM Objects..............................................................................................................................209
The Window Object Reference ..................................................................................................210
Properties .......................................................................................................................................................... 210
Methods ............................................................................................................................................................. 220

The document Object Reference ...............................................................................................235


Properties .......................................................................................................................................................... 236
Methods ............................................................................................................................................................. 240

The element Object Reference ..................................................................................................245


Properties .......................................................................................................................................................... 245
Methods ............................................................................................................................................................. 254

Summary ...................................................................................................................................268

Index .................................................................................................................................269

xiii
About the Authors

Jonathan Reid has been building web-based applications since 1996 and is passionate about creating awesome and
compelling user experiences on the web. He is a firm believer in user-centered creative processes and is an advocate
for standards and accessibility. Jon has a wide range of experience developing web applications, ranging from
genetic analysis software to cutting-edge advertising. Jon teaches courses in JavaScript, jQuery, and jQuery Mobile,
and has written extensively on all three topics. Jon bet his career on web technologies early on, and he is happy to
see his bet paying off.
Jon is an alumnus of the University of Colorado, Boulder, where he graduated with a degree in physics and
mathematics. He currently works as a Senior JavaScript Developer at Google, and lives in Sunnyvale, California with
his partner of 15 years. He occasionally tweets as @jreid01 and blogs even more occasionally at
webdev.dreamwidth.org.

Thomas Valentine lives in the small town of Selkirk, Manitoba, Canada on the shores of the Red River. His love of the
written word has shaped his career and life and will continue to do so for many years to come.

xv
About the Technical Reviewer

RJ Owen is a Product Manager and Design Lead at Convercent in Denver, Colorado.


RJ started his career as a software developer and spent ten years working in C++,
Java, and Flex before moving to the design and product side of things. He truly loves
good design and understanding what makes people tick. RJ holds an MBA and
a bachelor’s in physics and computer science. He is a frequent speaker at many
industry events including Web 2.0, SXSW Interactive, and Adobe MAX

xvii
Introduction

JavaScript has seen a huge increase in popularity in the last decade. Originally used to create interactive web pages
and handle basic form validation, JavaScript is now the backbone of many complex web applications. As a result,
people who can program well with JavaScript are in high demand for a wide range of projects. If you want to work with
web technologies, you should know JavaScript.
This book aims to provide both a complete reference for JavaScript and to cover the fundamentals of the
language. Our overall goal was to cover all the topics you need to work with JavaScript in projects of any size.

Who is this book for?


This book is aimed at two audiences: people who already know JavaScript and need a solid reference, and people
who are just learning the language and want to come up to speed quickly. In either case we assume you have at least
a basic background in programming. Chapter 1, in particular, assumes you are coming to JavaScript from a more
traditional language, such as C++ or Java.
We also assume you have a basic understanding of HTML, including semantic markup and the various document
type declarations—though throughout the book the examples that use HTML are written in HTML 5. We also assume
you have a basic understanding of CSS and how to use it to manage the appearance of your web pages.
Finally, we assume you have a basic understanding of the web and its underlying protocols.
If you have never written a line of code in your life, or if you are brand new to web technologies, this might not be
the best book for you. But as long as you have a basic understanding of programming and web technologies, this book
can help you learn JavaScript.

Overview
This book is divided into two sections. The first section is devoted to teaching the basics of JavaScript and its related
technologies. The second section is devoted to reference.
r Chapter 1 is aimed at the programmer who is coming to JavaScript from another language.
JavaScript is a much more dynamic language than most of the common languages, and
moving to JavaScript from those languages can present special challenges. First we cover what
JavaScript is and how it came to be, and then we dive right into the three main challenges that
programmers of other languages encounter: JavaScript’s object inheritance and lack of classes,
its rules for scoping, and its dynamic typing. All of these features work quite differently in
JavaScript than they do in other languages, and we want to get into them immediately. We wind
up the chapter by providing some common patterns in JavaScript that use what we have learned.
r Chapter 2 is an overall reference for the JavaScript language. We start at the beginning, with
JavaScript’s lexical structure, and quickly move into its operators, how it handles variables,
JavaScript’s take on objects, arrays, and functions. We wind up the chapter by going
over JavaScript’s flow control statements. Chapter 2 covers some of the things mentioned in
Chapter 1 in more detail. Together they form a solid introduction to the language, all the way
from the basics to intermediate concepts like closures.

xix
N INTRODUCTION

r Chapter 3 covers the Document Object Model. While the DOM is not technically a part of
JavaScript, we include a chapter on it because chances are a significant amount of the work
you’ll be doing with JavaScript will involve the DOM. The chapter starts with a brief history of
the DOM standard and how it has evolved. Then we dive right into the details: how to access
page elements, how to manipulate them (including creating new elements and deleting
existing ones), and the event model provided by the DOM (including custom events). We wind
up the chapter with a discussion of cross-browser strategies for dealing with variations in the
implementation of the DOM from browser to browser.
r Chapter 4 takes everything we have learned in Chapters 1, 2, and 3 and puts them to work.
We’ve divided the chapter up into sections, and each section covers something different.
The first section, Working with JavaScript, covers what you need to get to work with JavaScript.
We cover basic workflows as well as tools and debugging techniques. The second section
covers increasing the efficiency of your JavaScript applications by closely examining how
browsers load and parse scripts, and how you can use that to your advantage. The third section
covers asynchronous communication using the XMLHTTP object—otherwise known as
AJAX. The fourth section covers an important security limitation imposed by browsers—the
single origin policy—and some techniques for working with that policy and still getting your
work done. In the firth section we provide a practical example of data caching. Section six is
all about choosing JavaScript libraries, and section seven covers the most popular JavaScript
library, jQuery. Finally, we wrap up the chapter with a practical example of building your own
library using everything we have learned so far in the chapter.
r Chapter 5 begins the reference section of the book, and covers the objects that are a part
of JavaScript.
r Chapter 6 provides a reference for JavaScript’s control statements.
r Chapter 7 is all about JavaScript operators.
r Chapter 8 is a DOM reference.
Even though they are reference chapters, we have tried to provide useful, nontrivial examples throughout.

Conventions Used In This Book


Throughout this book, code is presented in a fixed-width font. Code examples and syntax definitions are separated
from other text and use the same font. In addition, inline mentions of code elements (such as objects, primitive
values, etc) are also presented in the same font.

Code Downloads
All of the code snippets and examples are available for download from http://www.apress.com/9781430246299. This
download includes all of the example code in the book, as well as some extra bits that didn’t make it into the book
itself. We encourage you to download the code and work with it as you go through the text.

xx
CHAPTER 1

JavaScript Basics

In this chapter we are going to take a different approach from what you’ll find in the first chapter of most
programming language references. Most books would dive right into the syntax and other details of the language, but
we are not going to do that here. JavaScript is a surprisingly difficult language to learn, and a relatively easy one to
dislike, so we first want to explore why some people struggle with it, and then we’ll provide a different, more intuitive
approach to mastering the language.
We will begin by examining the challenges of learning and working with JavaScript. We’ll cover a bit of
background by examining the language’s evolutionary history and implementations. Then, armed with that
information, we’ll examine the three specific areas where JavaScript is a challenge: its inheritance metaphor, its
scoping metaphor, and its typing metaphor. We’ll finish up by examining two very common patterns in JavaScript—a
topic most books wouldn’t cover until much later, but which we think you’ll be amply prepared to handle by the end
of this chapter. The patterns also serve as good applications of everything you will have learned in the chapter.
As we go through this chapter, we’ll cover the bare bones basics of JavaScript as we encounter them, but we
encourage you to not get too bogged down in considerations of syntax or other details at this stage. We’ll cover those
topics in later chapters. For now, concentrate on the bigger picture we’re about to paint.

Hard to Learn, Harder to Love


JavaScript is the target of a lot of hate. If you enter “hate JavaScript” or “JavaScript sucks” into your favorite search
engine, you’ll immediately get back page after page of articles about why the language is terrible. You can read the
articles for yourself—and we encourage you to do so—but after reading several of them, you’ll notice a pattern that
emerges in the complaints. There are a few key things that people dislike about JavaScript:
u Its implementation of objects and inheritance—prototypes vs. classes
u Its scoping rules
u Its handling of data types
And it’s true, JavaScript does these three things quite differently from many common languages. To make matters
worse, JavaScript employs syntax and structures similar to C or Java, which fosters the understandable expectation
that JavaScript should behave like C or Java, but it doesn’t. (This is a particular problem with JavaScript’s scoping
rules, which we’ll discuss in more detail later in this chapter.)
Also, because JavaScript is very C-like, a programmer who is familiar with C-like languages (C, C++, Java, C#, etc.)
can quickly and easily reach a level of proficiency in JavaScript without ever really understanding its inner workings.
It’s quite common to encounter talented developers who have been working with JavaScript for years (and who may
even consider themselves JavaScript experts) but who really have only a basic understanding of the language and have
little command of its true power.
So JavaScript is easy to misunderstand, difficult to master, and has significantly different implementations of
three important language features. Add to that issues like varying implementations from browser to browser, and it’s
no wonder people have a low opinion of the language.

1
CHAPTER 1 N JAVASCRIPT BASICS

Lest we scare you away from the language, it’s important to realize that many times this low opinion is due to
misunderstanding how JavaScript works, or attempting to apply practices from other languages that don’t map well to
how JavaScript behaves. We have found that the more a developer is willing to learn about JavaScript, the more they
appreciate it. That’s true to some extent for any language, of course, but it’s especially true for JavaScript. Its dynamic
nature and true functionality are difficult to understand but once you do understand it the language starts to take on a
beauty and simplicity that very few languages possess.
Our approach to teaching JavaScript is designed to help you form that level of understanding of JavaScript before
we even begin covering details like functions, arrays, and flow control. We’ll cover those things as well, and in great
detail, but before we do we want to address head-on the major things that people find confusing or difficult about
JavaScript. In so doing we hope to start you down your journey of mastering JavaScript. The first step in that mastery is
understanding the origins of JavaScript and its continuing evolution.

What Is JavaScript?
JavaScript is a programming language that was first released in 1995. Despite its name, JavaScript actually has nothing
to do with the Java programming language. From a high level, JavaScript has several notable features:
u It is a scripting language: JavaScript programs are “scripts” that are read and executed by an
interpreter (or engine). This is distinguished from compiled languages, in which programs are
read by a compiler and translated into an executable file. (Note that often JavaScript engines
themselves are written in a compiled language.) Programs written in scripting languages are
highly portable in that they can run in any environment where an interpreter for that language
has been built.
u It is C-like: JavaScript’s basic syntax and structure borrow heavily from C.
u It is an object-oriented language: JavaScript differs from most object-oriented languages,
though, in that its inheritance model is prototype-based rather than class-based.
u It has first-class functions: JavaScript functions are full-fledged objects and have their own
properties and methods, and may be passed into other functions as parameters or returned
from other functions and assigned to variables.
u It is dynamic: The term “dynamic programming language” is broad and covers a lot of features.
JavaScript’s most dynamic features are its implementation of variable typing (see next point)
and its eval() method and other functional aspects.
u It is both dynamically typed and weakly typed: JavaScript variables are not type-checked at
interpretation time (making JavaScript a dynamically typed language), and how operations
occur between operands of mixed types depends on specific rules within JavaScript (making
JavaScript a weakly typed language).
u It is an implementation of a standard: As described in the following section, JavaScript is
actually an implementation of the ECMA-262 standard, just as the C programming language is
governed by an ISO standard.
These major features combine to make JavaScript somewhat unique. They also help make JavaScript basics
fairly easy to learn if you have a passing familiarity with C-like languages, because you’ll have very little problem with
JavaScript’s syntax or structure.
JavaScript is also heavily influenced by Scheme, another functional programming language that is a dialect of
Lisp. JavaScript gets many of its design principles from Scheme, including its scoping.
So how did JavaScript come to have this unique combination of features?

2
CHAPTER 1 N JAVASCRIPT BASICS

The Evolution of JavaScript and the ECMA-262 Standard


As already mentioned, JavaScript is actually an implementation of a standard. It didn’t start out that way,
though. In September of 1995, Netscape released version 2.0 of its Navigator browser, which had a new feature:
an object-oriented scripting language that could access and manipulate page elements. Created by Netscape
engineer Brendan Eich and originally code-named “Mocha,” the new scripting language was at first released as
“LiveScript.” Shortly thereafter it was renamed “JavaScript,” to ride on the coattails of Sun’s Java programming
language.
In 1996, Netscape submitted JavaScript to the European Computer Manufacturer’s Association (or ECMA for
short; see http://www.ecma-international.org/memento/history.htm) for consideration as a standard. The
resulting standard, ECMA-262, was adopted in June 1997. ECMA-262 properly defines the ECMAScript scripting
language, and JavaScript is considered a “dialect” of ECMAScript. Another notable dialect of ECMAScript is version 3
or later of ActionScript. Technically, Internet Explorer does not implement JavaScript (due to copyright concerns), but
instead implements Microsoft’s own dialect of ECMAScript called “JScript.”
The latest version of ECMAScript is 5.1, which was published in June 2011. The version trail from ECMAScript 3
to ECMAScript 5 has an interesting political history, including a division between the standards committee (as led by
Brendan Eich) and industry stakeholders like Yahoo, Microsoft, and Google. We’re not going to get into the details;
suffice it to say that in the end all parties agreed to ECMAScript 5 as a unified solution.
As a part of ECMAScript 5, ECMA International published a suite of conformance tests that can be run by any
browser and will show which ECMAScript 5 features the browser supports and which features it does not support.
This suite, called Test262, is available at http://test262.ecmascript.org/. Note that it can take several hours to
run the full suite of tests, which contains around 11,500 individual tests. As of this writing, no browser has a perfect
score in Test262; the best scores currently belong to Safari and Internet Explorer, both of which fail only seven tests.
Firefox has the worst score, currently failing 170 tests (though that’s still quite an impressive achievement). These
figures are as of this writing, and may very well change between now and publication. We encourage you to run the
test suite on your favorite browsers and explore the tests that fail in each one. This will give you some idea of the
differences in JavaScript implementations from browser to browser, and how small they really are.
The evolution of ECMAScript is continuing with the 6th edition, code-named ECMAScript Harmony.
Harmony hasn’t been officially released yet and, as of this writing, no officially sanctioned release date has been
set. However, the specification drafts are all open for public viewing at http://wiki.ecmascript.org/doku.
php?id=harmony:specification_drafts, and a quick review of them indicates that Harmony will contain several
new features, among which are a syntactic implementation of classes, default parameters for functions, new string
methods, and the addition of hyperbolic trigonometry functions to the Math library.
Many browser manufacturers have already implemented some Harmony features, but overall implementation
is spotty and varies from manufacturer to manufacturer. For the most part, in this book we’ll be covering JavaScript
as a dialect of ECMAScript 5.1. Where ECMAScript 5 and Harmony overlap, we’ll note the differences so that you can
be aware of potential support pitfalls. Also, throughout this book we’ll use “JavaScript” as the generic term for the
language and its implementations unless we need to refer to a specific implementation or the standard itself.
Thanks to the standardizing influence of ECMA-262, all modern implementations of JavaScript are quite similar.
Individual implementations will vary, especially for cutting-edge features, but the core standard is well-implemented.

JavaScript Implementations
JavaScript has been implemented in several different ways. Adobe’s Acrobat document system, for example,
implements a version of JavaScript that enables users to employ simple scripts in Acrobat documents. JavaScript
engines have also been implemented as stand-alone resources on Windows, UNIX, and Linux for quite some
time. Shortly after it first introduced JavaScript in 1995, Netscape included a server-side implementation of it in its
Enterprise Server. Today, the most notable implementation of server-side JavaScript is in the Node.js software system.
By far the most common implementations of JavaScript are in web browsers. A web browser’s JavaScript
engine typically implements most of the features specified in the ECMA-262 standard. In addition, browsers often
extend JavaScript with other features not specified by the ECMA standard. The most notable of these extensions

3
CHAPTER 1 N JAVASCRIPT BASICS

is the Document Object Model, or DOM, which is a separate standard that is maintained by the World Wide Web
Consortium (W3C). It’s important to remember that the DOM and JavaScript are separate, independent standards,
though much of the work JavaScript does in the browser involves manipulating the DOM. We will cover the DOM in
more depth in Chapter 3.
Though JavaScript started its life as a browser-based scripting language, server-side implementations of
JavaScript are becoming more and more common. On the server side, a JavaScript implementation will include
most of the base features of ECMA-262. And, like browser-based implementations, server implementations can
extend JavaScript with other features, such as libraries or frameworks. Though server and browser JavaScript
implementations may differ on these extended features, the base features are the same: the JavaScript Array object
has the same methods and properties whether it is implemented in the browser or on the server (assuming the
implementation follows the ECMA standard, of course).
This makes your JavaScript skills particularly valuable. JavaScript is one of the few languages that has both client
and server implementations, so learning JavaScript is a good investment. With the use of Node.js on the server side,
along with client-side scripts, it is possible to build complex, data-driven applications with rich user interactions using
JavaScript as the primary language.
Probably two of the best examples of using JavaScript on both the client and the server are Microsoft’s Windows
Azure Platform and Windows Software Development Kit for Windows 8 (Windows SDK). Both of them support using
JavaScript for both back- and front-end implementations, making it possible to build Windows apps in JavaScript and
leverage all the power of Microsoft’s platforms.
We will not cover server-side JavaScript with Node.js in this book, but instead will focus on JavaScript in the
context of a web browser.

Web Browsers and JavaScript


Modern web browsers are complex pieces of software. Most people think of web browsers as content browsers, as a
“window on the Web” so to speak. To a programmer with an understanding of JavaScript, however, a web browser
becomes something more powerful: a user interface (UI) platform. Whether you are creating a simple web page or a
complex, data-driven application, the browser is your UI platform, and JavaScript is the language it uses.
JavaScript is just one of the many moving parts of a browser. At a very high level, a browser consists of a stack of
individual subprograms (or engines), each of which has an important function:
u UI engine: The actual visual interface presented to the user, with address bar, rendering
window, back and forward buttons, the bookmarks toolbar, and so forth.
u Browser engine: A controller that works between the UI layer and the rendering engine.
u Rendering engine: Responsible for reading HTML documents and their associated assets (such
as images and Cascading Style Sheets) and deciding how they should look. The rendering
engine is where the DOM lives.
u Network engine: Responsible for accessing the network.
u Data persistence engine: Manages the application’s persistence layer, which is where cookies
are stored, and where new HTML 5 features like web databases and local storage exist.
u JavaScript engine: Includes interfaces to the data persistence, network, and rendering engines
and can observe and modify any or all of them.
Figure 1-1 illustrates how the JavaScript engine is quite separate from the rest of the browser’s functions, though
it works very closely with other parts of the browser.

4
Random documents with unrelated
content Scribd suggests to you:
und vornehmlich gehörig«.[81] Diese Ehe endete bekanntlich mit
dem geheimnisvollen Tode der eines zuchtlosen Wandels
beschuldigten Jakobäa.[82]
Verlobung und Hochzeit folgten bei Bürgern und Bauern häufig
unmittelbar aufeinander, namentlich wenn eine feierliche Verlobung
stattgefunden hatte; doch kommt es auch vor, dass dem
ungeduldigen Bräutigam eine Wartezeit auferlegt wird, so Gudruns
Verlobten Herwig, der ein ganzes Jahr warten muss, wobei ihm aber
von der Schwiegermutter hochherzig gestattet wird, dass er sich
»mit schoenen wîben vertribe anders wâ Die zît«. Vom 8.
Jahrhundert ab begehrte die Geistlichkeit ein dreimaliges Aufgebot
und die kirchliche Einsegnung der Ehe. Die höhere Gesellschaft fügte
sich diesem Anspruche sofort, nicht so die breiteren Schichten des
Volkes, denen auf noch lange die einfache bürgerliche
Eheschliessung genügte »an (ohne) schuoler und an phaffen«, den
Bauern sogar bis ins 15. Jahrhundert. Aber selbst der Hochadel
verfügte sich erst am Morgen nach der Brautnacht zur Kirche.
Abends vor dem Kirchgange wurde das Brautpaar in die
Brautkammer gebracht, eine Decke beschlägt sie beide, ein
Geistlicher findet sich vielleicht ein, den Brautsegen über das Paar zu
sprechen.[83] Die Freundinnen und nächsten Angehörigen sind der
Braut beim Entkleiden behilflich, ihr manch guten Rat dabei
zuflüsternd. Oft sind auch der Brautvater, der Bruder des Bräutchens
oder andere aus der Sippschaft in dem Gemache anwesend.
»Wie Elsa von Brabant, die schöne, keusche Magd,
Dem Fürsten werth des Nachts ward zugesellet.
Die Kaiserin nicht unterliess,
Dass sie die Fürstin selbst des Nachts zu Bette wies.
Die Kammer war mit Decken wohlbestellet.
Das Bett war schön geziert, mit Golde roth und reicher Seiden,
Und manches Thier darein gewoben.
In dieses Bett hat sich die Jungfrau nun gehoben,
Um drin der Minne Buhurd zu erleiden.
Der Kaiser auch gekommen war,
Er hiess die Kammer das Gesinde räumen gar,
Gut Nacht gab er den Beiden miteinander.
Nun ward die Maid entkleidet schier,
Es drückte sie der Degen an sich stolz und zier:
Ich sag' nicht mehr als – was er sucht', das fand er.«[84]

Wenn in den mittelalterlichen Heldengedichten sich der Freund an


Stelle des wirklichen Bräutigams mit der Auserkorenen seines
Freundes trauen lässt, was, trotz der augenscheinlichen
Unwahrscheinlichkeit, ein dankbares, vielverwendetes Motiv für die
damaligen Dichter abgab, dann legte der Pseudogatte ein
entblösstes Schwert zwischen sich und die Braut, um dadurch ihre
Unberührbarkeit anzudeuten. So liegt Siegfried bei Brunhilde, und in
Konrad von Würzburgs der Verherrlichung der Freundestreue
gewidmetem Gedichte »Engelhart und Engeltrut« findet sich darüber
folgende Episode. Engeltrut, die Tochter des Königs von Dänemark,
deren Vater Engelhart und sein Freund Dietrich von Brabant dienen,
kommt eines Nachts an das Bett des Engelhart und verspricht ihm
ihre Liebe, sobald er Ritter geworden und sich im Turniere einen
Preis geholt. Nachdem er diese Bedingungen erfüllt und Engeltrut an
seiner heissen Liebe nicht mehr zweifeln kann, giebt sie ihm ein
Stelldichein im Baumgarten des väterlichen Schlosses; sie empfängt
ihn, nur mit Mantel und Hemd bekleidet, zieht ihn unter ihren Mantel
und führt ihn »ûf einen senften matraz«. Sie werden von ihrem
Widersacher, dem Neffen des Königs, belauscht. Engelhart aber
leugnet alles und will für die Wahrheit seiner Behauptung kämpfen.
Er holt sich seinen Freund Dietrich, der ihm zum Verwechseln ähnlich
sieht. Dieser kann mit ruhigem Gewissen seine Unschuld
beschwören, ficht mit dem Angeber, siegt und erhält als Engelhart
die Hand der Engeltrut. Er heiratet sie auch, wie es einst Engelhart
mit Dietrichs Frau gemacht, legt aber wie dieser ein blosses Schwert
im Brautbett zwischen sich und Engeltrut, die er dem Freunde rein
übergiebt.[85]
Derartige Hochzeiten mit Stellvertretern kamen übrigens auch in
der Wirklichkeit vor, allerdings nur an Höfen, deren Angehörige oft
schon im zartesten Alter vermählt wurden, oder die entweder aus
politischen Gründen oder der Bequemlichkeit wegen die weite und
oft nicht ungefährliche Reise zum Wohnsitze der Braut scheuten. Die
Vermählung wurde alsdann durch Prokuration mit dem Spezial-
Gesandten vollzogen, der an Stelle seines Gebieters das Beilager
abhielt, in eine schwere Prunkrüstung gehüllt, das scharfe Schwert
zwischen sich und der Herrin. Der alte österreichische Chronist Jakob
Unrest meldet über ein solches Beilager, das anlässlich der später in
die Brüche gegangenen Vermählung Maximilians I., des letzten
Ritters, mit der Prinzessin Anna von Bretagne, stattfand: »Kunig
Maximilian schickt seiner Diener einen genannt Herbolo von Polhaim
gen Britannia zu empfahen die Kunigliche Braut; der war in der Stat
Remis (Reims) erlichen empfangen, und daselbs beschluff der von
Polhaim die Kunigliche Brauet mit ein gewapte Man mit den rechte
Arm und mit dem rechten fus blos und ein blos schwert dazwischen
gelegt, beschlaffen. Also haben die alten Fürsten gethan, u n d i s t
n o c h d i e G e w o n h a i t . Da das alles geschehen was, war der
Kirchgang mit dem Gottesdienst nach Ordnung der heiligen
Kahnschafft mit gutem fleiss vollpracht.«
Die bürgerliche Gesellschaft äffte natürlich diese Beilagersitte des
Hochadels nach, wie aus der Dresdener Hochzeitsordnung aus dem
letzten Viertel des 15. Jahrhunderts hervorgeht. Nach dieser durften
die Hochzeitsgäste dem pro forma-Beilager beiwohnen, mussten
aber dann das Gemach verlassen, während das junge Paar aufstand,
um mit zwei Tischen voll Gästen zu tafeln.
Diese offiziellen Beilager, bei denen es tadellos ehrbar zuging, da
man im Gegensatze zu früheren Zeiten die mit dem Brautstaate
geschmückte Braut zu dem Gatten legte, sind von jenen inoffiziellen
Beilagern zu unterscheiden, die der erklärte Bräutigam mit seiner
Braut abhielt, ohne sie zur Frau zu machen.
Dieses »Beschlafen auf Treu und Glauben« kennt bereits die
früheste Zeit des deutschen Mittelalters. Die Ehre der Braut lief um
so weniger Gefahr, als sie unter dem Schutze des Gesetzes stand.
Das Mädchen, das sich dem Bräutigam nicht ergeben wollte, konnte
ganz wohl das Beilager gestatten, ohne in der öffentlichen Meinung
als gefallen zu gelten, wenn auch Zweifel an der beiderseitigen
Zurückhaltung zu naheliegend waren, um nicht geäussert zu werden.
Der Mann musste jedenfalls seine Selbstbeherrschung bewahren,
wenn es der Schönen so beliebte, denn die mittelalterlichen Gesetze
achteten eine während des Beilagers begangene Gewaltthat der
Notzucht gleich. »Eyn jeglich man mac an siner Amyen die notnunft
begen, daz sol man uber sie richten, als ob er nie bi ir gelege«,
heisst es in den Alemannischen Landrechten, und ähnlich in den
sächsischen Land- und dem alten Goslarischen Stadtrechte. Im
Parzival kommt die jungfräuliche Königin Kondwiramur (= coin de
voire amors = Ideal der wahren Liebe) zu dem schlafenden Parzival,
aber:

»Nicht von der Minne Ungestüm


Getrieben, die Jungfräulein kann
Zum Weibe wandeln durch den Mann, –
Dass er als Freund ihr rat' im Leide.
Den Leib umhüllt ein wehrhaft Kleid,
Ein dünnes Hemd von weisser Seide.
Was taugt wohl mehr zum Minnestreit,
Als wenn dem Manne so ein Weib
Sich naht? Der Herrin schlanken Leib
Hüllt noch ein Sammetmantel ein.«[86]

Sie teilt sein Lager


».... doch ist dies bedungen,
Dass nicht berühren darf der eine
Des andern Leib ....«

bis »die Nacht schwand hin, der Tag brach an«.


Dieser Gebrauch hielt das ganze Mittelalter hindurch an, wie Hans
von Schweinichens Denkwürdigkeiten bezeugen. Unter dem Jahre
1573 heisst es bei Beschreibung eines Reiseabenteuers im Lande
Lüneburg bei Herzog Heinrich, nach dessen glücklichem Ausgang in
Dannenberg getanzt wird; nach dem Tanze hebt das stereotype
grosse Saufen an, bei dem Schweinichen als letzter auf der Walstatt
bleibt: »Die einheimischen Junkern verloren sich auch, sowohl die
Jungfrauen, dass also auf die Letzte nicht mehr als zwo Jungfern
und ein Junker bei mir blieben, welcher einen Tantz anfing. Dem
folget ich nach. Es währet nicht lange, mein guter Freund wischt mit
der Jungfer in die Kammer, so an der Stuben war, ich hinter ihm
nach. Wie wir in die Kammer kommen, liegen zwei Junkern mit
Jungfrauen im Bette. Diser der mit mir vortanzet, fiel sammt der
Jungfer auch in ein Bette. Auf Mecklenburgerisch so saget sie, ich
sollt mich zu ihr in ihr Bette auch legen; dazu ich mich nicht lange
bitten lies, leget mich mit Mantel und Kleidern, ingleichen die
Jungfrau auch, und redeten also bis vollend zu Tag, jedoch in allen
Ehren. Auf den Morgen hatt ich das Beste, dass ich der Längste wär
auf dem Platz gewesen, gethan, und ich hatte es am besten vericht.
Kam deswegen beim Frauenzimmer in gross Gunst. Das heissen sie
auf Treu und Glauben beigeschlafen; aber ich acht mich solches
Beiliegen nicht mehr, denn Treu und Glauben möcht ich zu ein
Schelmen werden. Darum heisst es: ›Hüte dich, mein Pferd schlägt
dich‹ [87]«, denn:

»Dern weisz nicht daz ein biderbe man


Sich alles des enthalten kan
Des er sich enthalten wil –
We i z G o t d e r n i s t a b e r n i c h t v i l ! «
sagt Hartmann von der Aue, und ähnlich urteilte mehr als ein
Jahrtausend vor Schweinichen der byzantinische Geschichtsschreiber
Prokopius von Cäsarea, der die Keuschheit solcher Bräute in Zweifel
zieht. In manchen Gegenden machte man übrigens kein Geheimnis
daraus, dass Probenächte wirkliche Proben auf die Ehefähigkeit der
zukünftigen Ehegatten darstellten; ja man dehnte solche Prüfungen
auf Wochen, selbst Monate aus, um, wenn sie zu Ungunsten eines
der beiden prüfenden Teile ausgefallen waren, die Verlobung einfach
aufzuheben.
Ein interessantes Dokument über ein derartiges Vorkommnis aus
dem Jahre 1378 lieferte Prof. Kohler[88]. Darnach hatte ein Graf
Johann IV. von Habsburg ein volles halbes Jahr die nächtliche
Probezeit mit Herzlaude von Rappoltstein gehalten, doch schliesslich
einen Korb bekommen, weil ihm die junge Dame alle männlichen
Qualitäten absprechen musste. Kaiser Friedrich III., der sich mit der
Prinzessin Leonore von Portugal durch seinen Verwandten verlobt
hatte, jedoch mit der Vollziehung der Ehe zauderte, erhielt von dem
Onkel der Braut, König Alfons von Neapel, das Schreiben: »Du wirst
also meine Nichte nach Deutschland führen, und wenn sie dir dort
nach der ersten Nacht nicht gefällt, mir wieder zurücksenden oder
sie vernachlässigen und dich mit einer anderen vermählen; halte die
Brautnacht mit ihr deshalb hier, damit du sie, wenn sie gefällt, als
angenehme Ware mit dir nehmen, oder wo nicht, die Bürde uns
zurücklassen kannst.« Mit der Tochter dieses Kaisers hielt Herzog
Albrecht IV. von Bayern in Innsbruck das Beilager, die Hochzeit aber
erst in München.
Unter der Landbevölkerung war das Probenacht-Unwesen ungleich
verbreiteter, als in der anderen Gesellschaft des Mittelalters. Wann
diese Sitte ihren Anfang genommen, verliert sich im Dunkel,
jedenfalls bestand sie bereits im 13. Jahrhundert unter den Sachsen,
denn Kardinal Heinrich von Segusio berichtete: die Sachsen hätten
eine garstige aber gesetzmässige Gewohnheit, dass der Bräutigam
bei der Braut eine Nacht schlafen, und sich nachgehends wohl
entschliessen möge, ob er diese heiraten wolle oder nicht. In den
folgenden Jahrhunderten standen die Probenächte in voller Blüte,
wie aus der noch heute vielgenannten Monographie F. Christoph
Jonathan Fischers hervorgeht:[89]
»Beinahe in ganz Teutschland und vorzüglich in der Gegend
Schwabens, die man den Schwarzwald nennet, ist unter den Bauern
der Gebrauch, dass die Mädchen ihren Freiern lange vor der
Hochzeit schon diejenigen Freiheiten über sich einräumen, die sonst
nur das Vorrecht der Ehemänner sind. Doch würde man sehr irren,
wenn man sich von dieser Sitte die Vorstellung machte, als wenn
solche Mädchen alle weibliche Sittsamkeit verwahrlost hätten, und
ihre Gunstbezeugungen ohne alle Zurückhaltung an die Libhaber
verschwendeten. Nichts weniger! Die ländliche Schöne weiss mit
ihren Reizen auf eine ebenso kluge Art zu wirtschaften, und den
sparsamen Genuss mit ebenso viler Sprödigkeit zu würzen, als
immer das Fräulein am Putztisch.
Sobald sich ein Bauernmädchen seiner Mannbarkeit zu nähern
anfängt, sobald findet es sich, nachdem es mehr oder weniger
Vollkommenheiten besitzt, die hir ungefähr im ähnlichen
Verhaltnisse, wie bei Frauenzimmern von Stande, geschätzt werden,
von einer Anzahl Libhaber umgeben, die solange mit gleicher
Geschäftigkeit um seine Neigung buhlen, als sie nicht merken, dass
einer unter ihnen der Glücklichere ist. Da verschwinden alle Uebrigen
plötzlich, und der Libling hat die Erlaubnis, seine Schöne des Nachts
zu besuchen. Er würde aber den romantischen Wohlstand schlecht
beobachten, wenn er den Weg geradezu durch die Hausthür nehmen
wollte. Die Dorfsetiquette verlangt nothwendig, dass er seine
nächtlichen Besuche durch das Dachfenster bewerkstellige. Wie
unsere ritterbürtige Ahnen erst dann ihre Romane glücklich gespilt
zu haben glaubten, wenn sie bei ihren verlibten Zusammenkünften
unersteigliche Felsen hinanzuklettern und ungeheure Mauren
herabzuspringen gehabt; oder sich sonst den Weg mit tausend
Wunden hatten erkämpfen müssen, ebenso ist der Bauernkerl nur
dann mit dem Fortgange seines Libesverständnisses zufriden, wenn
er bei jedem seiner nächtlichen Besuche alle Wahrscheinlichkeit für
sich hat, den Hals zu brechen, oder wenn seine Göttin, während
dem er zwischen Himmel und Erde in grösster Lebensgefahr
dahängt, ihm aus ihrem Dachfenster herunter die bittersten
Nekereien zuruft. Noch in seinen grauen Hahren erzehlt er mit aller
Begeisterung dise Abenteuer seinen erstaunten Enkeln, die kaum
ihre Mannheit erwarten können, um auf eine ebenso heldenmütige
Art zu liben.
Dise mühsame Unternehmung verschaft anfangs dem Libhaber
keine andere Vorteile, als dass er etliche Stunden mit seinem
Mädchen plaudern darf, das sich um dise Zeit ganz angekleidet im
Bette befindet und gegen alle Verrätereien des Amors wol verwahrt
hält. Sobald sie eingeschlafen ist, so muss er sich plötzlich
entfernen, und erst nach und nach werden ihre Unterhaltungen
lebhafter. Ja in der Folge gibt die Dirne ihrem Buhler unter allerlei
ländlichen Scherzen und Nekereien Gelegenheit, sich von ihren
verborgenen Schönheiten eine anschauliche Erkenntniss zu
erwerben; lässt sich überhaupt von ihm in einer leichteren Kleidung
überraschen, und gestattet ihm zuletzt alles, womit ein
Frauenzimmer die Sinnlichkeit einer Mannsperson befridigen kan.
Doch auch hir wird immer noch ein gewisses Stufenmass
beobachtet, wovon mir aber das Detail anzugeben die Zärtlichkeit
des heutigen Wolstandes verbeut. Man kan indess viles aus der
Benennung Probenächte erraten, welche die letztern
Zusammenkünfte haben, da die erstern eigentlich Kommnächte
heissen.
Sehr oft verweigern die Mädchen ihrem Libhaber die Gewährung
seiner letzten Wünsche so lang, bis er Gewalt braucht. Das geschiht
allezeit, wenn ihnen wegen seiner Leibesstärke einige Zweifel zurück
sind, welche sie sich freilich auf keine so heikle Weise als die Witwe
Wadmann aufzulösen wissen. Es kömmt daher ein solcher Kampf
dem Kerl oft sehr teuer zu stehen, weil es nicht wenig Mühe kostet,
ein Baurenmensch zu bezwingen, das iene wollüstige Reizbarkeit
nicht besizt, die Frauenzimmer vom Stande so plözlich entwafnet ...
Die Probenächte werden alle Tage gehalten, die Kommnächte nur
an den Sonn- und Feiertagen und ihren Vorabenden. Die Erstern
dauern solange, bis sich beide Teile von ihrer wechselseitigen
physischen Tauglichkeit zur Ehe genugsam überzeugt haben, oder
bis das Mädchen schwanger wird. Hernach tut der Bauer erst die
förmliche Anwerbung um sie und das Verlöbnis und die Hochzeit
folgen schnell darauf. Unter den Bauren, deren Sitten noch grosser
Einfalt sind, geschiht es nicht leicht, dass Einer, der sein Mädchen
auf dise Art geschwängert hat, sie wider verliesse. Er würde sich
ohnfehlbar den Hass und die Verachtung des ganzen Dorfes zuzihen.
Aber das begegnet sehr häufig, dass beide einander nach der Ersten
oder Zweiten Probenacht wider aufgeben. Das Mädchen hat dabei
keine Gefahr, in einen übeln Ruf zu kommen; denn es zeigt sich bald
Ein anderer, der gern den Roman mit ihr von vorne anhebt. Nur
dann ist ihr Name zweideutigen Anmerkungen ausgesezt, wenn sie
mehrmals die Probezeit vergebens gehalten hat. Das Dorfpublikum
hält sich auf diesen Fall schlechterdings für berechtigt, verborgene
Unvollkommenheiten bei ihr zu argwöhnen. Die Landleute finden
ihre Gewohnheit so unschuldig, dass es nicht selten geschiht, wenn
der Geistliche am Orte einen Bauren nach dem Wohlsein seiner
Töchter frägt, dieser ihm zum Beweise, dass sie gut heranwüchsen,
mit aller Offenherzigkeit und mit einem väterlichen Wolgefallen
erzehlt, wie sie schon anfiengen, ihre Kommnächte zu halten.
Keyssler gibt in seinen Reisen (Hannover 1740, Brief IV, S. 21) uns
eine sehr drollige Erzehlung von einem Prozesse, den die Bregenzer
Bauren ehmals zur Verteidigung einer solchen Gewohnheit geführt
haben, die sie f ü g e n nennen. Die Kasuisten, die sich eben nicht
immer von den erlaubten und unerlaubten Begattungsarten die
richtigsten Begriffe machen, und manchmals dasienige für Sünde
halten, was keine ist, und dasienige nicht dafür halten, was doch
eine ist, ereiferten sich von ieher sehr über diesen ländlichen
Gebrauch. Er musste ihnen daher sehr oft zum Stoff dienen, ihre
Beredsamkeit auf eine sehr vorteilhafte und pathetische Weise zu
zeigen. Die katholischen Landpriester, die mit dem Charakter ihrer
Seelenbefohlnen zuweilen etwas näher, als die Protestanten mit den
Ihrigen bekannt sind, und mithin die Untadelhaftigkeit dieser Sitte
besser einsehen, äussern darüber mehr Duldsamkeit als die
Letzteren, die nie unterlassen, ihre Bauren deswegen mit den
heftigsten Strafpredigten zu verfolgen, und weil doch leider
heutzutage, wo die Welt so ganz im Argen ligt, dise Züchtigungen
nicht allezeit von Wirkung sind, so verabsäumen sie keine
Gelegenheit, zur Vertilgung dises heidnischen Gräuels den weit
kräftigeren weltlichen Arm zu Hülfe zu rufen .... Wenn es der
Wolstand nicht untersagte, gewisse Forschungen nicht allzuweit zu
verfolgen, und ihr endliches Resultat enthüllt darzustellen, so könnte
ich ihn leicht überführen, dass dise Sitte nicht nur in der Physiologie
des Menschen gegründet, sondern auch eine für die Bevölkerung
sehr heilsame Anstalt sei. Demienigen Teil meiner Leser aber, der
sich so schlechterdings nicht abfertigen lässt, und verschiedene
Erläuterungen wünscht, muss ich an die Aerzte und an dieienigen
Advokaten weisen, die vor den Ehegerichten Prozesse führen.«
Ausser diesen Probe- und Kommnächten herrschte überdies ein
mehr als freier Verkehr zwischen den beiden Geschlechtern im
Bauernstande. Bezeichnend dafür ist, dass z. B. in Bayern die
Schlafstätten der Mägde und Knechte nicht voneinander gesondert
waren, weshalb Ehebruch und Unzucht in erschreckender Weise
grassierten. Maximilian, der grosse Kurfürst Bayerns, sah sich
deshalb veranlasst, bei seinem 1598 erfolgten Regierungsantritt ein
»Sittenmandat« ausgehen zu lassen, nach dem Schwangerschaften
bei ledigen Weibspersonen mit Geldstrafen und Einschliessung in
»die Geige«, ein geigenartiges Brett mit Einschnitten für den Kopf
und die beiden Hände, gebüsst werden sollten; trotzdem
verrechnete 1605 der Münchener Rentmeister in seiner
Amtsrechnung über Strafgelder mehr als 300 uneheliche Kinder,
»derjenigen nicht zu erwähnen, die nicht angezeigt wurden«. Dabei
stand der Vermerk: »Es wollen sich auch sehr viele Adelspersonen in
diesem Laster finden lassen.« 30 Jahre später sah sich Kurfürst
Maximilian zu einer Strafverschärfung genötigt, die auf Ehebruch bei
Männern auf fünf- bis siebenjährige Landesverweisung, und bei
wiederholtem Pönfall das Schwert erkannte. Eheschänderische
Frauen aus Bürger- oder Bauernstande traf fünfjährige Verbannung,
Adelige der Verlust aller Ehrenrechte, und alle drei Stände im
Wiederholungsfalle der Tod durch den Henker. Das Laster war aber
so tief eingewurzelt, dass Maximilian durch ein späteres Reskript
diese Strafen mildern musste.[90]
Im allgemeinen jedoch war die Jungfräulichkeit der Braut
unerlässliche Bedingung des Bräutigams.

»Noch besser wär eines Igels Haut


Im Bett, als eine leide Braut«,

sagt Freidank.
Von den Ditmarschen ist bekannt, dass niemand von ihnen ein
gefallenes Mädchen ehelichen durfte, denn »de eine hôre nimt
vorsatzichlich, vorrêt ôk wol sîn vaterland«, und als Landesverräter
wegen seiner Ehe zu gelten, wagte kein echter Friese. Zu Bonifazius'
Zeiten war das Mädchen gezwungen, sich aufzuhängen. Über den
Scheiterhaufen der Toten knüpfte man den Verführer auf.[91] Das
Landrecht des als unkeusch verschrieenen Schwabens enthält eine
Stelle, die ungefähr folgendermassen lautet: Wenn ein Mann sich
eine Gattin genommen hatte, und beschuldigte sie, sie wäre bei der
Hochzeit nicht mehr Jungfrau gewesen, so waren die Eltern des
Mädchens verpflichtet, den Gegenbeweis anzutreten. Dieses geschah
dadurch, dass man »jr junckfraulichnn zaichnn«, das heisst das
Bettuch, auf dem sie die erste Nacht gelegen hatte, vor Gericht
brachte. Wenn man nun an diesem erkannte, dass sie eine reine
Magd gewesen, so wurde der Mann für seine Verleumdung mit 40
Schlägen und einer Geldbusse bestraft und er war gezwungen, das
Mädchen als Ehefrau zu behalten; zeigte es sich aber, dass das Weib
seine Jungfräulichkeit früher verloren hatte, so wurde sie aus dem
Hause des Vaters verstossen, »darumb daz sy hurhait pflegnn hat in
irs vaters haus«. In einigen Gegenden, wie im Thüringischen,
handhabte man die Unzuchtsstrafe noch bis ins 16. Jahrhundert
derart, dass eine zur Unehre gekommene Dirne sofort in Haft
genommen, ebenso der Thäter, falls man seiner habhaft werden
konnte, gefangen gesetzt wurde, bis die Trauung stattfand. Wollte
der Bräutigam nicht »Ja« sagen, so that es der Gemeindediener für
ihn: »Montag den 7. September 1579 sind Matthes Bechtold von
Neustadt vnd Agnes Bäuerin von Coburgk, da sie von wegen geübter
Vnzucht und Hurerey Kirchenbuss gethan vnd der Obrigkeitt straffe
mit gebührlichen vnd willig gehorsam vff sich genommen, in der
Büttelstube copulirt vnd ehelichen zusammen gegeben worden, auf
das in ihr Kindlein, mit welches geburt die Mutter alda vberfallen,
also cohenestirt, vnd von allen vnehren erledigt würde.«[92]
Die Kirchenbussen waren, wie ich bereits bemerkte, ungleich
empfindlicher als die Strafen der Sittenpolizei. Personen mit
derartigen Delikten mussten vor Beginn der Messe mit einem
weissen Stabe in der Hand oder Strohkränzen auf dem Kopfe, das
Mädchen in Konstanz ausserdem mit einem Strohzopf vor der
Kirchthüre stehen; in Rottenburg der Verführer in einem Strohmantel
an drei Sonntagen in der Kirche sein. In den Dörfern oberhalb
Rottenburgs musste er seine Liebste in einem Karren herumfahren,
wobei die Jugend und die lieben Nächsten das Paar mit Schmutz
bewarfen, ehe es von der Kanzel herab öffentlich seine Busse
auferlegt erhielt.[93] In gewissen Fällen wurden die Dirnen
ausgepeitscht und des Landes verwiesen.
Ein Hauptbestandteil des Lobes, das Tacitus dem germanischen
Eheleben spendet, besteht in der Hervorhebung der bei ihnen
herrschenden Einweiberei: »Denn sie sind fast die einzigen
Barbaren, die sich mit Einem Weibe begnügen; eine Ausnahme
machen sehr wenige unter ihnen, und diese nicht aus Sinnenlust,
sondern weil sie ihres hohen Standes wegen mehrfach umworben
werden.«[94] Also Ausnahmen kamen vor, wie z. B. Ariovists Bigamie
aus politischen Gründen, ferner bei den Merovingern und vornehmen
Franken, so bei Pipin II., der zwei rechtmässig angetraute Frauen,
Plectrud und Alpais, besass, ohne dass die Kirche dagegen Einspruch
zu erheben wagte. Ja, die Kirche wusste stets den Launen der
Mächtigen willfährig zu sein, denn auch sie war sich des Spruches
»Mit grossen Herren ist nicht gut Kirschen essen« bewusst, und –
eine Hand wusch eben die andere. So bleibt, aller Beschönigungen
zum Trotze, jene so viel angefochtene und anfechtbare Billigung
Luthers und Melanchthons zu der am 4. März 1540 geschlossenen
Doppelehe Philipps des Grossmütigen von Hessen mit der schönen
Sächsin Margarete von Sal, dem Hoffräulein seiner Gemahlin, als
hässlicher Fleck auf dem Charakterbilde dieser beiden grossen
Männer haften.
Die Angelegenheit erregte um so grösseres und unliebsameres
Aufsehen, als das kurz vorher in Kraft getretene Strafgesetzbuch
Kaiser Karls V. die Bigamie, »welche übelthat dann auch eyn
ehebruch und grösser dann das selbig laster ist« mit dem Tode
bestraft wissen wollte. Gegen weniger hochgeborene Übelthäter
dieser Art kannte das Gesetz keine Nachsicht, und Meister Franz, der
Nürnberger Scharfrichter, kann in seinen Aufzeichnungen[95] von
vollzogenen Hinrichtungen an Bigamisten, selbst Trigamisten
erzählen. Nur ein einziges Mal war in der deutschen Geschichte die
Doppelehe nicht nur gesetzlich gestattet, sondern sogar behördlich
angeordnet. Nach dem grossen Kriege war es, der Deutschlands
Bevölkerung von sechzehn bis siebzehn Millionen auf etwa vier
Millionen verringert hatte. Diesem Menschenmangel suchte man
durch zum Teil befremdliche Auskunftsmittel zu steuern. Ein solches
war unter anderen der am 14. Februar 1650 von dem fränkischen
Kreistag in Nürnberg gefasste folgende Beschluss: »Demnach auch
die unumgängliche dess heyl. Römischen Reichs Notthürft erfordert,
die in diesem 30 Jerig blutigen Krieg ganz abgenommene, durch das
Schwerdt, Krankheit und Hunger verzehrte Mannschaft wiederumb
zu ersetzen und in das khünfftig eben dersselben Feinden,
besonders aber dem Erbfeind des christlichen Namen, dem
Türckhen, desto stattlicher gewachsen zu sein, auf alle Mitl, Weeg
und Weiss zu gedenkhen, als seinds auff Deliberation und
Berathschlagung folgende 3 Mittel vor die bequembste und
beyträglichste erachtet und allerseits beliebt worden. 1.) Sollen
hinfüro innerhalb den nechsten 10 Jahren von Junger mannschaft
oder Mannsspersonen, so noch unter 60 Jahren sein, in die Klöster
ufzunemmen verbotten, vor das 2te denen Jenigen Priestern,
Pfarrherrn, so nicht ordersleuth, oder auff den Stifftern Canonicaten
sich Ehelich zu verheyrathen; 3.) J e d e m M a n n s s p e r s o n e n 2
We i b e r z u h e y r a t h e n e r l a u b t s e i n : dabey doch alle und Jede
Mannssperson ernstlich erinnert, auch auff den Kanzeln öffters
ermanth werden sollen, Sich dergestalten hierinnen zu verhalten und
vorzusehen, dass er sich völlig und gebürender Discretion und
versorg befleisse, damit Er als ein Ehrlicher Mann, der ihm 2 Weyber
zu nemmen getraut, beede Ehefrauen nicht allein nothwendig
versorge, sondern auch under Ihnen allen Unwillen verhüette.[96]«
Die Ehescheidung kam im Mittelalter verhältnismässig selten vor.
Zu den Scheidungsgründen in der Übergangsperiode vom Altertum
zum Mittelalter zählten einerseits Ehebruch, Mordversuch, Zauberei
und Gräberschändung, andererseits zu hohes Alter des einen der
Gatten, Unvermögen und Verweigerung der ehelichen Pflicht und
böswilliges Verlassen.[97] Die offen und vor Zeugen geschlossene
Ehe konnte nur wieder vor Zeugen aus beiden Familien rechtlich
gelöst werden.[98] Als sich ein geordnetes Gerichtsverfahren gebildet
hatte, wurde in aller Form der Ehescheidungsprozess geführt und
das richterliche Erkenntnis öffentlich bekannt gemacht. Die Kirche
strebte von Anbeginn bis zu ihrer vollen Machtentfaltung danach, die
Scheidung möglichst zu erschweren. Die Nichtigkeitserklärung der
Ehen konnte nur in Rom erfolgen, war daher für einen minder
Bemittelten schwer, ja geradezu unmöglich. Desto mehr Gebrauch
machten davon die Fürsten. Waren sie ihrer Frauen überdrüssig,
oder boten sich durch eine andere Heirat neue Vorteile, so wurden,
wenn kein anderer plausibler Scheidungsgrund aufzutreiben war,
Zeugen beschafft, von denen das Vorhandensein eines verbotenen
Verwandtschaftsgrades zwischen den Ehegatten beschworen wurde;
Geld und Ansehen thaten das übrige, so dass die Lösung der Ehe
durch päpstliche Gewalt keine Schwierigkeiten machte.
Später wurde durch den Wegfall der meisten der vorangeführten
Scheidungsgründe die Lösung der Ehe noch weiter erschwert. Selbst
Ehebruch der Frau wurde 829 schon als kein Grund zur Auflösung
der Ehe betrachtet, ebensowenig wie das geschlechtliche
Unvermögen. Hatte der Bauer seine Frau dem Nachbarn anzubieten
(s. oben Seite 65), so sah man in der Frühzeit nichts Übles darin,
wenn der Gatte sich einen, wenn angängig möglichst vornehmen,
dabei natürlich möglichst kräftigen Stellvertreter suchte. Ein
thüringer Ritter, der wegen Unvermögen keinen Erben von seiner
Frau erhalten konnte, bat den Landgrafen Ludwig, den Gemahl der
heiligen Elisabeth, ihn zu vertreten. Mit der Verleitung der eigenen
Frau zum Ehebruch hatte ein derartiges Ansuchen um so weniger zu
thun, als in einem solchen Falle jedes materielle Interesse in Wegfall
kam und der Mann nur den derzeitigen Hauptzweck der Ehe, die
Erhaltung und Fortpflanzung der Familie, im Auge hatte.
In einer Zeit, in der die kirchliche Lehre von der Verdienstlichkeit
ehelicher Enthaltsamkeit Eingang fand, als der höchsten Frivolität
eines Teiles der Gesellschaft die überspannteste Frömmigkeit
gegenüberstand, blieben oder wurden manche Ehen bloss
Scheinehen. Die Geistlichkeit pries dies sehr unlogisch, da sie doch
die Ehe als Sakrament erklärt hatte, als ein heiliges Werk, dem der
höchste Lohn im Jenseits gewiss war. Einige Fürstinnen und Fürsten
erwarben sich durch dieses freiwillige und unter erschwerenden
Umständen aufrecht erhaltene Cölibat den Heiligenschein. Sehr
vernünftig erklärte sich aber die Synode von Schwerin anno 1492
gegen diesen asketischen Blödsinn. Ich habe bereits früher, beim
Rittertum (Seite 49) einige dieser »Martyrerinnen« und Heiligen
namhaft gemacht, die neben anderem Unsinn auch den Sport
trieben, jungfräuliche Ehefrauen zu sein, die selbst den
Verführungen der Flitterwochen nicht unterlegen waren, die die
Vorzeit viel bezeichnender als wir: Kusswoche, Kirchenwoche,
Zärtel-, Butter- und Honigwoche nannte.
Wie alles, was vom Menschen kommt und mit dem Schicksal
zusammenhängt, hat auch die Ehe ihre Licht- und Schattenseiten,
daher begeisterte Anhänger und erbitterte Widersacher. Einer der
eifrigsten Fürsprecher der Ehe war D. Martinus Luther. »Die Ehe ist
eine schöne herrliche Gabe und Ordnung«, dann weiter, dass der
Ehestand »Gottes Ordnung und der allerbeste und heiligste Stand
sei; darum sollte man ihn auch mit den herrlichsten Ceremonien
anfahen um des Stifters willen, nehmlich Gottes, der da will, dass ein
Männlein und ein Fräulein beisammen sein sollen« u. s. w.[99]
Freidank, ohnehin ein begeisterter Lobredner der Frauen, bei dem
sich das schönere Geschlecht für das sinnige Kompliment zu
bedanken hat:

»Vom F r e u n die F r a u n sind zubenannt


Ihre Freud' erfreuet alles Land;
Wie wohl das Freuen der erkannte,
Der sie zum Ersten Frauen nannte!«[100]

singt auch das Hohelied der Ehe in allen Tonarten:

»Wenn man alles sagen soll,


So ist auf Erden keinem wohl,
Als wer errang ein Weiblein traut
Und fest auf ihre Treue baut.«

Dann:

»Wer treues Weib errungen hat,


Dem wird für seine Sorgen Rat.«

Oder Reinmar von Zweter, der über die Ehe sagt:

» E i n Herz, e i n Leib, e i n Mund, e i n Mut


Und e i n e Treue wohlbehut,
Wo Furcht entfleucht und Scham entweicht
Und zwei sind eins geworden ganz,
Wo Lieb' mit Lieb' ist im Verein:
Da denk ich nicht, dass Silber, Gold und Edelstein
Die Freuden übergoldet, die da bietet lichter Augen Glanz.
Da, wo zwei Herzen, die die Minne bindet
Man unter einer Decke findet
Und wo sich eins an's and're schliesset,
Da mag wohl sein des Glückes Dach.«
Ob Meister Freidank und Reinmar aus Erfahrung sprechen oder
nur galant sein wollen, ist bei den dürftigen Nachrichten über der
Dichter Leben nicht zu ermitteln. Anders steht es aber mit einem
Priester, den wir bisher als recht widerhaarig kennen gelernt haben.
Wenn dieser, nämlich Bruder Berthold von Regensburg, sich zu einer
Empfehlung der Ehe aufschwingt, noch dazu in Argumenten, die
auch heute noch nichts von ihrer Beweiskraft eingebüsst haben,
dann sollte es doch zu denken geben. Also Hagestolz, horche auf,
und beherzige, was Frater Berthold in seiner Predigt über die zehn
Gebote sagt: »Darum du junge Welt, geh schleunig in starker Busse
in dich, und zur Ehe, oder mit der Ehelosigkeit auf den Grund der
Hölle. ›Bruder Berthold, ich bin noch ein junger Knabe, und die mich
gerne nähme, die will ich nicht, und die ich gerne nähme, die will
mich nicht.‹ Nun so nimm aus aller Welt eine zur Ehe, mit der du
recht und gesetzlich lebest. Willst du die eine nicht, so nimm die
andere; willst du die Kurze nicht, so nimm die Lange; willst du die
Lange nicht, so nimm die Kurze; willst du die Weisse nicht, so nimm
die Schwarze; willst du die Schlanke nicht, so nimm die Dicke. Nimm
dir nur eine Ehefrau aus aller Welt. ›Bruder Berthold ich bin doch
arm und habe nichts.‹ Es ist weit besser, dass du arm ins
Himmelreich fahrest, als arm zur Hölle. Du wirst noch schwerer reich
in der Ehelosigkeit als in der Ehe. ›Bruder Berthold ich habe mein
Brot noch nicht!‹ Ich höre wohl, du willst die Ehe nicht. Da du nun
die Unehe haben willst, so nimm dir wenigstens nur eine Einzige zur
Unehe. Nimm diese an die eine Hand und den Teufel an die andere,
und nun geht alle drei mit einander zur Hölle, wo euch nimmer
geholfen wird.«[101]
Dieselbe Meinung hegt Fischart in seinem Philosophischen
Ehzuchtbüchlein:

»Wer da flieht den Rauch der Ehe,


Fällt in eine Flamm' und ärger Wehe.
Mancher den Regen flieht im Haus
Und fällt darnach in den Bach da draus.«
Das geistvolle Schriftchen enthält noch manche, selbst heute recht
beherzigenswerte Ehestandsregel.[102]
Nun audiatur et altera pars. Damit liessen sich Folianten füllen,
doch mag hier nur der Bissigsten einer, Geiler von Kaisersberg, zu
Wort kommen, da sich neben vielen Verbohrtheiten auch manch
Körnlein Wahrheit in seiner Predigt birgt. Eine reiche Frau reibt ihrem
Gatten täglich ihre Mitgift unter die Nase, sagt er; eine fruchtbare
bringt mit ihren vielen Kindern selbst dann Sorgen ins Haus, wenn
Reichtum vorhanden ist; fehlt dieser aber, so giebts Kummer und
Not. Ist sie unfruchtbar, klagen sie um Kinder; ist sie schön, muss
der Mann sorgen, dass auch andere ausser ihm sie begehrenswert
finden. »Jedoch du nemmest für eine, was du wöllest, so
bekommest du ein meister uber dich, die dir allzeit wider beffzet
gleich als ein böser hundt. Diss ist der weiber natur und brauch, da
sie alzeit den männern widerreden und antwort geben. Dann sie
volgen irem natürlichen ursprung nach, nemlich, dieweil sie auss
einem krummen ripp gemachet sein, so reden und bellen sie allzeit
herwider und wissen auff alle ding ein antwort zu geben.«[103]
Übrigens ist Geiler konsequent genug, auch die Weiber vom Heiraten
abhalten zu wollen, indem er sie an das Sprichwort erinnert:

»Es ward nie kein mann,


Er hett ein wolffszaan!«

Genützt haben aber die Redereien blutwenig. Die Leute heirateten


doch, der Augsburger Kaufherr Burkard Zink viermal; in Köln am
Sonntag nach Michaelis im Jahre des Herrn 1498 eine Frau sogar
zum siebenten Male, nachdem sie bereits sechsmal Witwe gewesen
war.
Die feile Liebe.
Wenn der ganze Verlauf der Geschichte der geistigen Entwickelung
der Menschheit mit dem Leben eines Mannes verglichen wird, so
ähnelt das Mittelalter in seiner Gesamtheit den Flegeljahren des
Mannes, der – halb Kind, halb Jüngling – zwischen den diesen
Entwickelungsjahren eigentümlichen Extremen schwankt. Der Geist
hält mit dem Wachstum des Körpers nicht Schritt; langsam dämmert
in ihm erst die Erkenntnis des Jünglings auf, während sich die
Glieder recken und dehnen, das Blut schneller die Adern durchkreist,
neue Gedanken erstehen, eckig und unreif wie der Körper. Das
lieblich kindliche Gehaben macht einem selbstbewussten Auftreten,
die zarte Kinderstimme dem rauheren Organe Platz. Das
Schamgefühl, dem innersten Wesen des Kindes fremd, beginnt
langsam zu erstehen, ohne sich jedoch noch voll entfaltet zu haben.
Ganz so war es mit den Deutschen zwischen dem 12. und dem 16.
Jahrhundert. Die auf sie aus zahllosen Kanälen einströmende
Erkenntnis hatte ihnen viel von der Naivität früherer Zeit geraubt,
ihre Ursprünglichkeit, die sich erst unter dem Einfluss ausländischer
Sitten und der Schulbildung in viel späterer Zeit verlieren sollte, war
für jetzt noch aufdringlicher und abstossender geworden als sie
vordem war, da sie nun nicht mehr unbewusst sich bethätigte.
Das Geschlechtsleben entwickelte sich, je weiter das Mittelalter
seinem Höhepunkte zukam, immer unverhüllter, bis es von der
Naivität zur Gemeinheit gesunken war. Dem Grundsatze naturalia
non sunt turpia huldigte das Mittelalter in einer der Neuzeit
unbegreiflichen Weise. Die intimsten Verrichtungen scheuten die
breiteste Öffentlichkeit nicht[104], in Wort und Bild durften die
widerhaarigsten Zoten ungescheut verkündet werden. Die
Vorurteilslosigkeit in geschlechtlichen Dingen sah in dem
Vorhandensein öffentlicher Dirnen und ihrer Benutzung etwas ganz
Selbstverständliches. Die Sentenz von den Dirnen, die da seien, die
Tugend der Bürgermädchen vor Versuchungen zu bewahren, war im
Mittelalter allgemein, stammt daher keineswegs von Heine. Man
duldete die Wollustpriesterinnen schon in frühester Zeit innerhalb
der Stadtmauern oder in deren unmittelbaren Nähe ausserhalb des
Weichbildes, wenn auch von Anbeginn an unter erschwerenden
Umständen. Meist boten gewerbsmässige Kupplerinnen den
öffentlichen Mädchen Unterschlupf. Sie sorgten einerseits für die
Heranziehung von Liebhabern, andererseits für immer wechselndes
Mädchenmaterial. Die engen Strassen der meist räumlich sehr
beschränkten Städte und Flecken eigneten sich noch nicht zum
Abfangen der Liebhaber ausserhalb der Häuser. In grossen Städten
war dies allerdings anders. König Wenzel von Böhmen (1361-1419),
ein gar galanter Herr, zog im nächtlichen Prag »als ein garczawn«
(Junggeselle) auf der Streife nach »dy junckfrauen, die leider sind
gemein« umher[105], die er demnach hoffen durfte auf den Strassen
anzutreffen. Doch die Hauptrolle beim Liebesgeschäft spielten die
Kupplerinnen, die sich aber nicht nur darauf beschränkten, ihre
eigene Ware an den Mann zu bringen, sondern auch zu sonstigen
Liebeshändeln gerne ihre Dienste boten. Eine kleine Novelle
Ko n r a d s v o n W ü r z b u r g , eines der bedeutendsten und
fruchtbarsten Dichter des 13. Jahrhunderts, beleuchtet sehr
anschaulich das Wirken einer solchen Kupplerin aus Konrads Heimat,
einer »vuegerinne«, die liebebedürftigen Pärchen ihr Haus zur
Verfügung stellte. Eines Tages, als bei ihr Schmalhans Küchenmeister
war, ging sie zur Kirche, um dort vielleicht Kunden einzufangen. Das
Glück schien ihr hold, denn der Dompropst Heinrich von Rothenstein,
einer der Chorherren am Münster, kreuzte ihren Weg. Die Fügerin
wisperte ihm zu: »Eine schöne Frau entbietet Euch Freundschaft,
Huld und Gruss, da ihr Herz und Sinn, Euch, würdiger Herr, in Treue
zugewandt ist.« Dem Pfaffen schlug das Herz höher und
schmunzelnd gab er der »lieben Mutter« eine Handvoll Münzen,
indem er ihr ans Herz legte, nur alles in die Wege zu leiten. Frau
Fügerin hielt nun freudig Ausschau nach der schönen Frau, die den
feisten Chorherrn in ihr Herz geschlossen haben könnte, als ein
»schön minniglich Weib« in das Gotteshaus trat. Die Kupplerin
machte sich heran und vertraute ihr an, dass ein gar schöner
»tugendlichster« Herr von ihrem Anblick todwund sei und nur sie
allein im stande wäre, die Minnewunde zu heilen, die ihr Augenpaar
geschlagen. Lachend willigte die Angesprochene ein, nach der Messe
weiteres hören zu wollen. Die Kupplerin erstand nun einen seidenen
Gürtel, um ihn der aus der Kirche Kommenden als Geschenk des
Liebhabers anzubieten. Diesem Angebinde und der
Überredungskunst der Fügerin vermochte die Tugend der Dame
nicht standzuhalten. Sie versprach, sich nachmittags im Häuschen
der Alten einzufinden. Pünktlich erschien sie im »behaglichen
Kleide«. Die Kupplerin flog glückstrahlend zum geistlichen Herrn, ihn
zum Stelldichein zu führen, doch leider hinderten ihn dringende,
unaufschiebbare Geschäfte, dem lockenden Rufe zu folgen. Die arme
Kupplerin sah sich um ihren sicheren Verdienst gebracht und trollte
betrübt ihrem Hause zu, als sie einem stattlichen, reichgekleideten
Herrn begegnete, der auch gerne bereit war, für den Chorherrn
einzuspringen. Inzwischen harrte die Dame bei der Kupplerin
neugierig der Dinge, die da kommen sollen. Sie erschrak aber bis auf
den Tod, als sie in dem die Kupplerin begleitenden Herrn – ihren
eigenen Mann erkannte. Nun galt es frech sein und den dräuenden
Spiess umkehren. Mit einer Flut von Schmähreden, Schimpfwörtern,
Püffen und Schlägen überfiel sie den ahnungslosen Gemahl, der
schliesslich noch glücklich war, die Verzeihung seiner betrogenen
Gattin durch eine Unzahl von Versprechungen zu erlangen.[106]
Neben der Kupplerin nimmt eine Dame die Hauptstelle in dieser
den Stempel der Natürlichkeit tragenden Novelle ein. Die
Stadtbewohnerinnen waren auch kaum zurückhaltender als die
Edeldamen und Dorfschönen, weshalb das lichtscheue Treiben der
Gelegenheitsmacherinnen unheilvollen Einfluss auf die Moral
ausüben musste. Mittels drakonischer Strafen suchte sich die
mittelalterliche Rechtspflege denn auch der Fügerinnen zu
entledigen. Aber die Verurteilungen von Kupplerinnen verheirateter
Frauen zu Pranger, Steintragen, Stadtverweisungen[107], selbst zum
Lebendbegraben – »drivende meghede, de andere vrowen
verschündet«[108] – und Verbrennen, wie im alten Berlin[109], halfen
dem Übel um so weniger ab, als die Fügerinnen bei dem
überhandnehmenden Luxus ständigen Zulaufes der
verschwenderischen Weiber sicher sein durften. Viele dieser
Kupplerinnen waren, einst wie jetzt, in ihrer Jugend durch ihre
nunmehrigen Kolleginnen auf die abschüssige Bahn gestossen
worden und vergalten nun Gleiches mit Gleichem. Der Berner
Dichter Nicolaus Manuel lässt in seinem Fastnachtsspiel »Vom Papst
und seiner Priesterschaft« eine solch ausrangierte Dirne sprechen:

»Ich freu' mich, dass ich kuppeln kann,


Sonst wär' ich wahrlich übel dran;
Ich hab mirs meisterlich gelehrt
Und lange mich damit ernährt,
Seitdem dass meine Brüste hangen
Wie 'n leerer Sack auf einer Stangen.«

Gar manche putz- und gefallsüchtige Stadtdame war ihre eigene


Kupplerin[110], andere wieder behalfen sich damit, dass sie ihr
Gewerbe mit Hilfe ihres Ehemannes ausübten. Gegen solche
Schandkerle, die eine grosse Nachkommenschaft zu verzeichnen
haben, wettert Geiler von Kaiserberg: »Wenn sie kein gelt mehr
haben, sagen sie den weibern: ›gehe und lug, das wir gelt haben;
gehe zu diesem oder jenem Pfaffen, studenten oder edelmann unnd
heiss dir ein gülden leihen und denck, komb mir nicht zu hauss, wo
du kein gelt bringest, lug wo du gelt auftreibest oder verdienest,
wenn du schon es mit der handt verdienest, da du auff sitzest.‹
Alsdann gehet sie ein ehrliche unnd fromme fraw auss dem hauss
und kompt ein hur wider heim.«[111] Murner charakterisiert einen
dieser Kuppler, der dem »ganzen Ort sein Weib gönnt« dadurch,
dass er ihn, wenn ein guter Gesell zur Frau kommt, um Wein laufen
lässt, von wo er erst nach »dritthalb Stund« zurückkommt. Tritt er
ins Haus, so singt er laut, um sein Kommen bemerkbar zu machen u.
s. w.[112]
Johannes Sarisberiensis erzählt im »Polycraticus«, lib. III cap. 13:
»Wenn die junge Frau aus ihrem Brautgemach schreitet, sollte man
den Gatten weniger für den Gemahl, als für den Kuppler halten. Er
führt sie vor, setzt sie den Lüstlingen aus, und wenn die Hoffnung
auf klingende Münze winkt, so giebt er ihre Liebe mit schlauer
Heuchelei preis. Wenn die hübsche Tochter oder sonst etwas in der
Familie einem Reichen gefällt, so ist sie eine öffentliche Waare, die
ausgeboten wird, sobald sich ein Käufer findet.«
Der geschmeidige Italiener Aeneas Silvius Piccolomini, nachmals
Papst Pius II., ein scharfer Beobachter, der gut zu schildern weiss
und pikant zu erzählen liebt, beschreibt das mittelalterliche Wien,
dem er in den sechziger Jahren des 15. Jahrhunderts einen Besuch
abstattete, als wahres Paradies, die Bewohner aber als Ausbunde
von Lasterhaftigkeit. Nach ihm sind alle Wienerinnen
Ehebrecherinnen, alle Wiener Hahnreie oder Zuhälter. Ganz so
schlimm, wie es der fromme Herr macht, der weder als Schriftsteller
noch als Mensch ein Tugendbold war, der an übergrosser
Wahrheitsliebe litt, wird es gerade nicht gewesen sein, wenn es auch
ebensowenig in Wien wie in anderen grossen und reichen Städten
klösterlich zuging. Die Verführung in den Grossstädten war nicht
gering und die Frauentugend nicht immer klar wie ein Spiegel. Der
Ehebruch war vormals nicht seltener als heutzutage, wenn auch die
alten Gesetzbücher nicht so leicht darüber hinglitten wie die
modernen Strafgesetzsammlungen. Die alten Volksrechte
bestimmten bereits, dass Ehebrecherinnen, auch wenn sie ihr
Verbrechen mit Wissen des Gatten begangen, hinzurichten seien.
Der Gatte und der Liebhaber hatten nur Ehrenstrafen zu gewärtigen.
Die »Hals- oder Peinliche Gerichtsordnung Kaiser Karls V.« von 1553
hingegen erkennt:
cxxij. »Item so jemandt sein eheweib oder kinder, vmb eynicherley
geniess willen, wie der namen hett, williglich zu vnehrlichen,
vnkeuschen vnd schendtlichen wercken gebrauchen lest, der ist
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookultra.com

You might also like