javaScript的with语句

本文深入解析JavaScript的基础语法,包括with语句、函数定义、String和Date对象的使用,以及定时方法、Number类型操作、Math对象功能、数组对象Array的创建与方法、自定义对象的创建、Prototype对象的应用、window对象的常用方法、DOM编程技巧、正则表达式的创建与应用等。

with语句的作用:有with语句,在存取对象属性和方法的时候就不需要重复的指定参考对象。

格式:

with(obj){
操作obj的属性语句;
}
<script type="text/javascript">
        <!—
            with(document){
              write("您好 !");
              write("<br>这个文档的标题是 : \"" + title + "\".");
              write("<br>这个文档的 URL 是: " + URL);
              write("<br>现在您不用每次都写出 document 对象的前缀了 !");
           }
        // -->
</script>

函数

<script>
 function  函数名(形参列表) {
                                   函数体;
                            }
</script>

函数的定义格式:function 函数名(形参列表) {
函数体;
}
javaScript注意点:
(1)在javaScript中函数定义形参时不能使用var声明变量;
(2)在javaScript中函数没有返回值类型的,如果需要返回直接返回即可,如果不需要返回就不返回
(3)没有 重载,后定义的同名函数会覆盖先前的同名函数
(4)在javaScript中任何的函数内部都隐式的维护了一个arguments(数组)的对象,给函数传递数据的时候,是会先传递到arguments对象中,然后再由arguments对象分配数据给形参的。

String,Date对象

创建一个字符串的方式: new String(“字符串的内容”);
或 var Str = “”;

字符串常用的方法:

定时方法

window.setInterVal(“代码”,“每隔指定的毫秒数”);其中setInterVal第一个参数指定调用的代码,第二个参数指每隔指定的毫秒数)
例子:
window.setInterval(getCurrentTime(),1000);

Number类型

创建对象的方式有:

var 变量 = new Number(数字)

方式2:
var 变量 =  数字;

常用的方法:

toStrng():把数字转换成指定进制形式的字符串。
var num = 10;
document.write(“十进制:” + num.toString());
document.write(“二进制:” + num.toString(2));


toFixed():指定保留小数位;
toFixed(2):保留两位小数

Math对象

ceil 向上取整
floor:向下取整
random:0-1随机数,含0不含1
round:四舍五入

数组对象Array

创建数组对象的方式:

var arr = new Array();

方式2:

var 变量名 = new Array(长度)  创建一个指定长度的数组对象

方式3:

var 变量名 = new Arrray("元素1","元素2","元素3");  给数组指定元素创建数组的对象

方式4:

var 变量名 = ["元素1","元素2","元素3"];

javaScript中数组注意的事项:
1.javaScript中数组的长度是可以发生变化的;

数组常用的方法:
concat方法:数字与数组拼接返回新的数组
join方法:使用指定的分隔符把数组的元素拼接成一个字符串返回
push方法:添加一个新的元素
shift:删除一个元素

自定义对象

在javaScript没有类的概念,只要有函数即可创建对象

方法:使用带参或无参的函数创建对象

function Person(id,name){
this.id = id;
this.name = name;
this.say = function (){
  alert(name + "呵呵");
 }
}

方式2:

使用Object创建函数
function Object() {
var p = new Object ();
p.id = 110;
p.name = "铁蛋";
}

方式3:

使用字面量的方式创建
var p = {
id = 100,
name = "狗娃",
say = function() [
alert(this.name + "额呵");
} 
}

*需求:编写一个JS文件,在文件中自定义一个数组工具对象,该工具对象要有一个找到最大值的方法,与找元素对应的索引值的方法。

var tool = new ArrayTool();
function ArrayTool(){
  this.getMax = function(arr) {
    for (var i =1; i <arr.length;i++) {
      if (arr[i]>max)  {
       max = arr[i];
        }
     }
      return max
   }
   //找元素的索引值
   this.searchFile = function(arr,target) {
  for (var i =1; i <arr.length;i++) {
      if (arr[i] = target)  {
       return i;
        }
     }
      return -1;
   }

 }
}

Prototype对象

需要注意的细节:

  • Prototype是函数的一个必备属性,即只要有函数就一定有prototype
  • prototype的值是一个对象
  • 可以任意修改函数的prototype的属性值
  • 一个对象会自动拥有prototype所有成员属性和方法

需求:
给字符串对象添加一个toCharArray的方法,然后再添加一个reverse(翻转)的方法,

//把字符串转化为数组
String.prototype.reverse = function(){
//想把字符串转换成字符数组
var arr = this.toCharArray(); 
arr.reverse();
return arr.join("")
}

var  str = "你们厉害啊";
var charArr = str.toCharArray();
document.write("数组的元素:" + charArr.join(","));
str = str.reverse();
document.write("<br/>翻转后的字符串为:" + str)

window对象

window.open(url,…)
常用方法:
open() : 打开一个新的窗口
resizeTo(): 将窗口的大小改为指定的宽度和高度值。
moveBy():相对于原来的窗口移动指定的x,y值
moveTo():将窗口左上角的屏幕位置移动到指定的x和y位置

setInterval():每经过指定的毫秒值后会执行指定的代码
clearInterVal():根据一个任务的ID取消的定时任务
setTimeOut():经过指定的毫秒值后执行指定的代码一次

location地址栏对象

Dom编程,根据属性找节点

通过html元素的标签属性找节点:

document.getElementById("html元素的id");
document.getElementsByTagName("标签名");
document.getElementByName("html元素的name");

InnerHtml是用于设置标签体的内容,value用于设置标签体的value值

通过关系找标签

通过关系找标签的具体方法如下:
含义:通过关系(父子,兄弟关系)找标签。
parentNode 获取当前元素的父节点


childNodes 获取当前元素的所有下一级子元素
firstChild:获取当前节点的第一个子节点
lastChild:获取当前节点的最后一个子节点


nextSibling:获取当前节点的下一个节点。(兄节点)
previousSibling : 获取当前节点的上一个节点。(弟节点)

可以通过标签的类型来进行判断筛选:
1.文本节点的类型
2

正则表达式

正则表达式的创建方式:

方式一: /正则表达式/模式

方式二:new RegExp(“正则表达式”,模式);

正则表达式对象常用的方法:
test方法:使用正则对象去匹配字符串 如果匹配成功返回true,否则返回false
exec方法:根据正则表达式去查找字符串符合规则的内容

模式:
g (全文查找出现的所有pattern)
i (忽略大小写 )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值