Exploring JavaScript for-in loops | JavaScript, JavaScript The for-in loop is the only cross-browser technique for iterating the properties of generic objects. There’s a bunch of literature about the dangers of using for-in to iterate arrays and when to apply the hasOwnProperty filter, but beyond that, documentation of this ubiquitous construct is surprisingly patchy. This article attempts to fill some gaps, I hope its useful. The Basics The ES 5 specification details two distinct syntaxes for the for-in statement: 1. for (var variable in objectExpression) {statement} This is the familiar format. The variable can optionally be defined outside of the for-in production. Here’s another example. Note that as with all property names, the indexes in the above example are actually strings – so we cannot do a simple “truthy” test on line 5. 2. for (LeftHandSideExpression in objectExpression) {statement} This interesting syntax is seldom documented (MDC gives it no mention). Which properties are iterated? One of these properties is [[Enumerable]]. Yes. 1.
Time-Saving and Educational Resources for Web Designers - Smashing Magazine Advertisement Web design community is strong and hard-working. We have plenty of useful resources, tools and services created, developed and released every single day: apart from goodies such as free fonts or icons, there are also many educational resources and little time-savers that can significantly improve designer’s workflow. We permanently look out for the new projects and support them by presenting them on Twitter, Facebook, in our e-mail newsletter and, evidently, in Smashing Magazine’s posts. Today we are glad to present one of such posts: an overview of handy new resources for web designers; most of them were released recently, but some of them are a bit older. Useful Resources for Web Designers Fonts in UseThis site presents a catalogue for real-world typography samples and innovations in branding, advertising, signage and publishing. FPO: For Print OnlyFor Print Only is a blog that is dedicated to everything related to print design. Last Click Should I Work for Free?
JavaScript: A Survey of the Language Douglas Crockford www.crockford.com © 2002 Douglas Crockford This document is an introduction to the JavaScript Programming Language for professional programmers. JavaScript is not Java. JavaScript is a regular language which won't take much time to learn. When JavaScript was first introduced, I dismissed it as being not worth my attention. JavaScript was developed by Brendan Eich at Netscape as the in-page scripting language for Navigator 2. This document describes ECMAScript Edition 3 (aka JavaScript 1.5). JavaScript contains a small set of data types. Boolean has two values: true and false. Number is 64-bit floating point, similar to Java's double and Double. String is a sequence of zero or more Unicode characters. 'This is a string.' "Isn't this a string? 'A' // The character A "" // An empty string Escapement is done with the \ character, like in Java. var s = "Hello World!" It is possible to add methods to the simple types. Objects var myHashtable = {}; myHashtable.city = "Anytown"; Arrays
JavaScript: The World's Most Misunderstood Programming Language Douglas Crockford www.crockford.com JavaScript, aka Mocha, aka LiveScript, aka JScript, aka ECMAScript, is one of the world's most popular programming languages. Virtually every personal computer in the world has at least one JavaScript interpreter installed on it and in active use. Despite its popularity, few know that JavaScript is a very nice dynamic object-oriented general-purpose programming language. The Name The Java- prefix suggests that JavaScript is somehow related to Java, that it is a subset or less capable version of Java. JavaScript has a syntactic similarity to Java, much as Java has to C. JavaScript was not developed at Sun Microsystems, the home of Java. The -Script suffix suggests that it is not a real programming language, that a scripting language is less than a programming language. Lisp in C's Clothing JavaScript's C-like syntax, including curly braces and the clunky for statement, makes it appear to be an ordinary procedural language. Typecasting Moving Target
Great Works in Programming Languages In September, 2004, I posted a query to the Types list asking people to name the five most important papers ever written in the area of programming languages. This page collects the responses I received. (A few are missing because I am still tracking down bibliographic information.) Many thanks to Frank Atanassow, David Benson, Nick Benton, Karl Crary, Olivier Danvy, Mariangiola Dezani, Dan Friedman, Alwyn Goodloe, Pieter Hartel, Michael Hicks, Robert Irwin, Luis Lamb, Rod Moten, Rishiyur Nikhil, Tobias Nipkow, Jens Palsberg, and John Reynolds for contributing. Additional suggestions are welcome. (Bibtex format preferred!) The greatest of the great (mentioned by many people): C. Peter J. Robin Milner. Gordon Plotkin. John C. Pretty great works (mentioned by multiple people): Luca Cardelli. Luis Damas and Robin Milner. Edsger W. Edsger W. William A. Robert Kowalski. Peter J. John McCarthy. Eugenio Moggi. Greg Morrisett, David Walker, Karl Crary, and Neal Glew. George C. Gordon D. Gordon D.
Essential Guide To Regular Expressions: Tools and Tutorials | Developer's Toolbox Advertisement Regular expressions are an essential part of any programmer’s toolkit. They can be very handy when you need to identify, replace or modify text, words, patterns or characters. In a nutshell: regular expressions (regex) are like a Swiss army knife for modifying strings of just about anything. Need to make your site URLs look pretty? Regular expressions are something that you’ll come across at least once in your development cycle, whether you’re just trying to modify an .htaccess file to make clean URLs, or something much more advanced like filtering RSS feeds or other data. Getting Started Just dipping your feet into regex? The Absolute Bare-Minimum Every Programmer Should Know About Regular Expressions1A simple and direct article that outline some of the main “characters” in regular expressions. Demystifying Regular Expressions853In this article a simple usage of regular expressions is described. Regular Expressions Cheat Sheet11A one-page reference sheet. Regex Tools
Web 2.0 for the Classroom - home Flashcards: The world's largest library of printable flash cards How To Become A Hacker Copyright © 2001 Eric S. Raymond As editor of the Jargon File and author of a few other well-known documents of similar nature, I often get email requests from enthusiastic network newbies asking (in effect) "how can I learn to be a wizardly hacker?". If you are reading a snapshot of this document offline, the current version lives at Note: there is a list of Frequently Asked Questions at the end of this document. Numerous translations of this document are available: ArabicBelorussianBulgarianChinese, Czech. The five-dots-in-nine-squares diagram that decorates this document is called a glider. If you find this document valuable, please support me on Patreon or SubscribeStar. The Jargon File contains a bunch of definitions of the term ‘hacker’, most having to do with technical adeptness and a delight in solving problems and overcoming limits. The hacker mind-set is not confined to this software-hacker culture. 1. 2. 3. 5. 2. 3. 4. 1. 2. 3. 4.
Learn Javascript You don't need prior programming experience to be able to follow this tutorial series. We'll take you step by step through how to write your own JavaScript programs, so that you no longer have to rely on pre-built scripts written by others. Instead, you'll be able to write your own scripts that do exactly what you want them to do. Getting StartedAn introduction to a series of tutorials on programming with JavaScript. Hello WorldJust about all programming courses start off with a simple program called "Hello World." VariablesIn this tutorial, we'll build on what we learned with our first script by creating a variable and displaying its value on a web page instead of displaying static text. OperatorsIn the previous tutorial, you learned how to create variables. JavaScript Quiz OneThis short quiz will test you on what you should have learned so far. The IF StatementNow that you know a little about operators, we'll look at couple more types of operators. Javascript Quiz ThreeTest time again.
ECMA-262 » JavaScript. The core. Read this article in: Japanese, German (version 2), Arabic, Russian, French, Chinese. This note is an overview and summary of the “ECMA-262-3 in detail” series. Every section contains references to the appropriate matching chapters so you can read them to get a deeper understanding. Intended audience: experienced programmers, professionals. We start out by considering the concept of an object, which is fundamental to ECMAScript. ECMAScript, being a highly-abstracted object-oriented language, deals with objects. An object is a collection of properties and has a single prototype object. Let’s take a basic example of an object. For the code: we have the structure with two explicit own properties and one implicit __proto__ property, which is the reference to the prototype of foo: Figure 1. What for these prototypes are needed? Prototype objects are also just simple objects and may have their own prototypes. ECMAScript has no concept of a class. Easy enough, isn’t it? Figure 2. Figure 3.
Web Framework - Objective-J Tutorial Learning Objective-J Objective-J is a new programming language based on Objective-C. It is a superset of JavaScript, which means that any valid JavaScript code is also valid Objective-J code. Anyone familiar with JavaScript and object-oriented programming concepts, classical inheritance in particular, should have no difficulty learning Objective-J. Classes Objective-J has two types of objects: native JavaScript objects and Objective-J objects. Creating a class in Objective-J is simple. @implementation Person : CPObject{ CPString name;} @end The beginning of a class is always the keyword @implementation, followed by the class name. After the declaration, a block enclosed with brackets is used to define all your member variables. To end a class declaration, add the keyword @end. Methods Just as with objects, native JavaScript functions work unchanged in Objective-J. - (void)setName:(CPString)aName { name = aName;} - (CPString)name{ return name;} Using Objects & Classes Importing Code Categories
Recommended Search Engines-The Library Google alone is not always sufficient, however. Not everything on the Web is fully searchable in Google. Overlap studies show that more than 80% of the pages in a major search engine's database exist only in that database. Table of features Some common techniques will work in any search engine. You may also wish to consult "What Makes a Search Engine Good?" How do Search Engines Work? Search engines do not really search the World Wide Web directly. Search engine databases are selected and built by computer robot programs called spiders. If a web page is never linked from any other page, search engine spiders cannot find it. After spiders find pages, they pass them on to another computer program for "indexing." Many web pages are excluded from most search engines by policy.
HTML5 Snippets