博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
有关JS
阅读量:6872 次
发布时间:2019-06-26

本文共 3150 字,大约阅读时间需要 10 分钟。

hot3.png

Javascript
数组(包括对象)
var ballArray=new Array("basketball","football","pingpong");
for(var b in ballArray)
    document.write(ballArray[b]+"<br/>");
一个不知错对的冒泡
<script type="text/javascript">
var numArray=new Array(10,7,9,1,3,2,5,8,6,4,11,13,12,14,15,18,17,16);
var flag=0;
for (var i=0;i<numArray.length&&flag==0;i++)
{    flag=1;
    for (j=0;j<numArray.length-1;j++)
    {    
        if(numArray[i]<numArray[j])
        {
            temp=numArray[i];
            numArray[i]=numArray[j];
            numArray[j]=temp;
            flag=0;
        }
    }
}
for (var n in numArray)
    document.write("数"+numArray[n]+"<br/>");
</script>
产生10以内的随机整数
parseInt(Math.random()*10)
一个按钮关闭窗口,按钮上的字是value
<input type="button" value="close" οnclick="window.close();">
函数体内的变量为局部,函数外的为全局,作用域为整个html文档
定义一个空对象
var phone=new Object();
javascript的构造函数竟然就是一个同名函数
function Dog(x,y,z)
{
    this,name=x;
    this.color=y;
    this.weight=z;
}
var dogA=new Dog("花花","黑色",50);
var dogB=new Dog();
dogB.name="多多";
dogB.color="黄色";
甚至直接定义对象的属性,难道不用构造函数
var dog=new Object();
dog.name="花花";
dog.color="黑色";
对象的方法可以这样定义:
function callName()
{
    alert(this.name);
}
function Dog(x,y,z)
{
    this.name=x;this.color=y;this.weight=z;
    this.call=callName;即将callName挂到了对象的call方法上
}
访问对象属性除了用.还可以用[]这个可以按键访问,可以操作
如Dog属性有name1,name2,name3,即可以dogA["name"+i]访问
with(dogA)
{
    在此访问,不用加对象名和.
}
for(var i in dogA)
{
    document.write(i);此处显示的i为对象的属性及方法名
}
for(var j in dogA)
{
    document.write(dogA[j];此处显示的为对象属性的值和方法的内容
}
数据验证
form的οnsubmit="return flase"可以阻止提交
可以写一个function
οnsubmit="return check(this);"其中 check再来返回逻辑值
建议把函数的js放到<head>中
可以用载入方法加入js
<script language="javascript" src="menu_data.js"></script>
正则表达式又忘了,复习一下
"s单个空格(包括tab和换行) "S互补
"d数字
"w字母数字下划线 "W互补
^尖头 $钱尾
/"bAAA/ /AAA"b/ "b两头 "B中间
又一个javascript书
定义数组
var objArray=new Array();创建一个空的
var objArray=new Array(2);创建一个长度为2的数组,但不能创建只有2的数组
var objArray=new Array("2","a","b");创建并初始化
又一方法(初始化方法)
var objArray=[];创建一个空的
var objArray=[2];创建一个只有2的数组
var objArray=["a","b","c"];创建并初始化
String对象的match(regExp)匹配正则表达式的方法
如:
while(!str.match(/"d+/))当不为数字时
关于事件
function imgClick(img)
{
    alert(img.src);
}
<img src="1.jpg" οnclick="imgClick(this)"/>
在官官相护没有标记的对象如window,document
这些的方法直接传函数名
document.οnclick=imgClick;不要加()之类,或加引号都不对
Ctrl+回车提交表单
var txtContent=document.getElementById("txtContent");
txtContent.οnkeydοwn=function(evt){
    evt=evt?evt:window.event;兼容性
    if(evt.ctrlKey&&13==evt.keyCode)this.form.submit();
}
遍历复选框
for (var i=0;i<theForm.elements.length;i++)
{
    if("checkbox"==theForm.elements[i].type)
    //处理语句
}
通过id引用结点
document.getElementById("span1");
通过tag name来引用结点,返回数组
document.getElementByTagName("span");
获取结点内的文本,通常用innerHTML属性
<span id="span1">hello</span>
如下取:
document.getElementById("span1").innerHTML;
亦可用结点的办法
documnet.getElementById("span1").childNodes[0].nodeValue
注:nodeValue只对文本结点有效
创建元素结点
var _table=document.createElement("table");创建一个表格
_table.setAttribute("border","1");设置表格的属性
创建文本结点
_td=documnet.createElement("td");
_tn=document.createTextNode("内容");
_td.appendChild(_tn);将文本作为td的子节点
_tr.appendChild(_td);将_td放入tr的子节点
可以用两层循环来产生一个表格
以上IE不行,tr用insertRow(i),td用insertCell(i)才行
删除一行
_table.deleteRow(i)
删除一列
则要循环每一行来删除列i=0;i<_table.rows.length
_table.rows[i].deleteCell(j);

转载于:https://my.oschina.net/u/1040766/blog/133562

你可能感兴趣的文章
LINUX下常用软件形式的安装方式
查看>>
Linux常用命令笔记--kickstart
查看>>
nginx的代理
查看>>
SCCM 2012 之前期准备
查看>>
比较两文件是否一致
查看>>
ASP.NET WebService 中使用 ASP.NET_SessionId
查看>>
Linux系统邮件查看及清空
查看>>
基于虚拟用户的邮件服务器在企业网中的应用
查看>>
android开发中shape的绘制
查看>>
在XP系统下安装ubuntu12.04
查看>>
数据库同步过程中一致性和完整性的保证
查看>>
VC++中图像处理类CBitmap的用法
查看>>
c# 建筑者模式的具体实现
查看>>
我的友情链接
查看>>
我的朗科运维第六课(1)
查看>>
Windows Server 2012 存储去重
查看>>
小米手机M1和华为Honor荣耀U8860手机深入比较
查看>>
java.lang.NoClassDefFoundError
查看>>
PHP删除目录下所有目录文件
查看>>
应一些朋友要求发下Caffe 怎么安装 CPU环境 ubuntu脚本(记录 可用的)
查看>>