JavaScript 基于对象 和 事件驱动!!!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title> <style type="text/css">
table{width:70%; border-collapse:collapse;}
table th{ border:#0000FF 1px solid}
</style> </head> <body> <script type="text/javascript"> var x = 3; //变量
x = x-1;
alert(x);
if(2==x) //if swith while for 控制语句
alert("Yes");
else
alert("No"); var y = "abc";
switch(y)
{
case "abc":
alert("abc");
break;
case "def":
alert("def");
break;
default:
alert("default");
} x = 1;
while(x<3)
{
alert("x=" + x);
x++;
} var sum="";
for( var x=1; x<3; x++ )
{
if(x==2)
sum = sum + "x=" + x;
else
sum = sum + "x=" + x + ",";
}
alert(sum);
document.write("<font color='red' size='10'>"+sum+"<font/>"); document.write("<table>");
for(var x=1; x<=9; x++)
{
document.write("<tr>");
for(var y=1; y<=x; y++)
{
document.write("<th>" + y + "*" + x + "=" + y*x + "</th>");
}
document.write("</tr>");
}
document.write("</table>"); var arr = new Array(); //数组
arr = ["abc", 1, true, 8.9];
arr[6] ="I'am 6";
for(var x=0; x<arr.length; x++)
{
alert(arr[x]);
} var str="";
function printArray(arr) //函数
{
for(var x=0; x<arr.length; x++)
{
if(x==arr.length-1)
str += arr[x];
else
str += arr[x] + " , ";
}
alert(str);s
}
printArray(arr); </script> </body>
</html>

函数使用  一般函数 动态函数 匿名函数

<script type="text/javascript">

function show()
{
for(var i=0; i<arguments.length; i++)
alert(arguments[i]);
return arguments.length;
}
show(1,2,3,4);
show("length: " + show(1,2,3)); //动态函数
var show2 = new Function("x", "y", "sum=x+y; return sum");
var sum = show2(2,3);
alert(sum); //匿名函数
var show3 = function()
{
alert("匿名函数");
}
show3(); //事件驱动 + 匿名函数
window.onload = function()
{
alert("事件驱动 + 匿名函数");
} //事件驱动 + 一般函数
function method()
{
alert("事件驱动 + 一般函数");
}
window.onload = method; </script>

构造对象

<script type="text/javascript">

// 构造对象Person
function Person(name, age)
{
this.name = name;
this.age = age;
}
var p = new Person("kevin", 23);
alert(p.name + "-----" + p.age); //构造对象,添加属性 和 方法
function Person2()
{
}
var p2 = new Person2();
p2.name = "xiang";
p2.age = 24;
p2.fun = function()
{
alert(this.name + "++++" + this.age);
}
p2.fun(); </script>

封装: 可以先将所需功能写到一个*.js文件中,然后在HTML中调用*.js文件,即可调用其中的方法和变量。例如:

jsDemo1.js

// JavaScript Document
function ArrayTool(){};
var arrayTool = new ArrayTool(); function sortArray(arr)
{
var temp=0;
for(var i=0; i<arr.length; i++)
{
for(var j=arr.length-1; j>i; j--)
{
if(arr[j]<arr[j-1])
{
temp = arr[j];
arr[j] = arr[j-1];
arr[j-1] = temp;
}
}
}
return arr;
} function showArray(arr)
{
var str = "";
for(var i=0; i<arr.length; i++)
{
if(i==arr.length-1)
str += arr[i];
else
str += arr[i] + " , ";
}
alert(str);
} arrayTool.getSortArray = sortArray;
arrayTool.showArray = showArray;

HTML调用文件

<script type="text/javascript" src="jsDemo1.js"> </script>
<script type="text/javascript"> var arr = [6,5,4,3,2,1];
arrayTool.showArray(arr);
arrayTool.getSortArray(arr);
arrayTool.showArray(arr); </script>

with用于确定对象的作用范围

with(对象){可直接调用对象的属性和方法,不用加对象名}

for…in语句用于遍历对象或数组

for(变量)s  in (学生对象)stu){alert(s)}此处打印出stu的属性,要获得属性值用stu[s]

for(x in array) alert(x)打印的是数组角标

<script type="text/javascript">

function Person(name, age)
{
this.name = name;
this.age = age;
}
var p = new Person("kevin", 23);
with(p) //with语句
{
alert(name + "----" + age);
} //for in 语句遍历对象 和 数组 //for 语句
for(s in p)
{
alert(s + "=" + p[s]);
}
var arr = [1, 2, 3, 4];
for(a in arr)
{
alert(arr[a]);
} </script>

JavaScript 练习,变量,数组,函数,对象, with for 语句的更多相关文章

  1. JavaScript中变量和函数声明的提升

    现象: 1.在JavaScript中变量和函数的声明会提升到最顶部执行. 2.函数的提升高于变量的提升. 3.函数内部如果用var声明了相同名称的外部变量,函数将不再向上寻找. 4.匿名函数不会提升. ...

  2. 关于javascript中变量及函数的提升

    javascript中变量以及函数的提升,在我们平时的项目中其实还是挺常用的,尤其是大型项目中,不知不觉就会顺手添加一些变量,而有时候自己的不小心就会酿成一些不必要错误,趁有时间整理一下自己对于js中 ...

  3. JavaScript Array(数组)对象

    一,定义数组 数组对象用来在单独的变量名中存储一系列的值. 创建 Array 对象的语法: new Array(); new Array(size); new Array(element0, elem ...

  4. 04 Javascript的数据类型 数组 函数

    javascript:包含ECMAscript DOM BOM 描述了以下内容: 语法 类型 语句 关键字 保留字 运算符 对象 引入方式: <script> alert(123) < ...

  5. es6学习笔记--字符串&数值&数组&函数&对象的扩展

    这几天抽空学习了es6语法,关于字符串,数值,数组,函数以及对象的扩展,看到es6标准入门这本书,里面讲的扩展特别多,我认为有几部分在项目上用不到,就挑有用的当笔记学习了. 字符串的扩展 str.in ...

  6. JavaScript中遍历数组和对象的方法

    js数组遍历和对象遍历 针对js各种遍历作一个总结分析,从类型用处,分析数组和对象各种遍历使用场景,优缺点等 JS数组遍历: 1,普通for循环,经常用的数组遍历 var arr = [1,2,0,3 ...

  7. javascript之Array()数组函数讲解

    Array()是一个用来构建数组的内建构造器函数.数组主要由如下三种创建方式: array = new Array() array = new Array([size]) array = new Ar ...

  8. JavaScript中,数组和对象的遍历方法总结

    循环遍历是写程序很频繁的操作,JavaScript 提供了很多方法来实现. 这篇文章将分别总结数组和对象的遍历方法,新手可以通过本文串联起学过的知识. 数组遍历 方法一:for 循环 for 循环是使 ...

  9. javascript之自定义数组工具对象

    <pre name="code" class="html">/* 需求:编写一个js文件,在js文件中自定义一个数组工具对象, 该工具对象要有一个找 ...

  10. JavaScript局部变量变量和函数命名提升

    之前接触了一些javascript局部变量命名提升的问题但是一直没有总结今天特地好好总结一下 变量提升 一个变量的作用域是程序源代码中定义的这个变量的区域.全局变量拥有全局作用域,在javascrip ...

随机推荐

  1. HttpClient远程调用接口

    详细参考这个博文:http://www.cnblogs.com/itliucheng/p/5065619.html 一.get请求: //关键代码就这几行 String urlNameString = ...

  2. 清华EMBA课程系列思考之三 -- 中国经济与金融

    清华EMBA的第三次课,大家都已经渐渐了解了课程系列的基本节奏,也逐步适应了思考的基本思路,本次课程涉及到的全部内容都非常专业.闲话少述,直入主题了. 李稻葵教授部分: -- 清华大学经济管理学院弗里 ...

  3. The best way to predict the future is to invent it,预测未来最好的方法是创造它!

    The best way to predict the future is to invent it,预测未来最好的方法是创造它! ——Smalltalk发明人Alan Kay “预测未来的最好方法, ...

  4. MVC进阶学习--View和Controller之间的数据传递(二)

    1. 使用Request.Form MVC 将页面简单化,与WebForm中的事件机制完全不同,就和普通的html标签表单提交没有任何区别(当然WebForm中的事件机制其实也是表单提交).在表单提交 ...

  5. NYOJ 613 免费馅饼

    免费馅饼 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描写叙述 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy ...

  6. CentOS 源码安装svn

    一. 下载依赖包 1. apr源码包 http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.5.2.tar.gz 2. apr-util源码包 h ...

  7. VMWare虚拟机下为Ubuntu 12.04.2配置静态IP(NAT方式)

    http://www.cnblogs.com/objectorl/archive/2012/09/27/vmware-ubuntu-nat-static-ip-settings.html 参考以上方式 ...

  8. unity中动态生成网格

    以下是绘制正方形面片的一个例子,方便之后查阅: 效果如图所示: 红轴为x方向,蓝轴为z方向. 代码如下: using System.Collections; using System.Collecti ...

  9. ios错误ignoring file xxx missing required architecture x86_64 in file

    错误ignoring file xxx missing required architecture x86_64 in file 解决方法: 1.在Project target里“Architectu ...

  10. String、StringBuilder、 StringBuffer 深入分析 源代码解析

    java学习有一段时间了.但学习的东西都是框架等东西,java基础知识有点遗忘.所以重温一下java基础知识.写写文章里面有错的希望大家指正共同进步~~ 一.String 大家常常会说使用" ...