本文是对上一篇 JavaScript简单入门 的一些细节补充。

一、全局变量和局部变量

在<script>标签内定义的变量是当前页面中的全局变量。即 <script>标签可以直接访问其他<script>标签定义的变量。而在函数体中定义的变量则为局部变量。如:

 <script type="text/javascript">
var x = 1;//全局变量
function show(x){//局部变量
x = ++x;
return x;
}
show(x);
document.write("x="+x);
</script>

所以输出的x = 1;而不是2。

二、常见对象

1、object对象:为js对象提供通用方法。如toString()方法:返回对象的字符串形式。

2、String对象:用于处理文本(字符串),String对象为字符串提供了许多方法。

①字符串是 JavaScript 的一种基本的数据类型。String 对象的 length 属性声明了该字符串中的字符数。String 类定义了大量操作字符串的方法,例如从字符串中提取字符或子串,或者检索字符或子串。需要注意的是,JavaScript 的字符串是不可变的(immutable),String 类定义的方法都不能改变字符串的内容。像 String.toUpperCase() 这样的方法,返回的是全新的字符串,而不是修改原始字符串。

②用户可以使用已有的方法来增加自定义方法,如:去掉字符串两端的空格:

 <script type="text/javascript">
function trim(str){
var start,end;
start = 0;
end = str.length-1; while(start <= end && str.charAt(start)==' '){
start++;
}
while(start <= end && str.charAt(end)==' '){
end--;
}
return str.substring(start,end+1);//包含头不包含尾。
}
</script>

③String的原型:String.prototype

使用原型属性可以向对象添加属性和方法。添加的新方法或新属性,那么字符串对象就都具有了这些新方法。如:

<script type="text/javascript">
//使用String原型添加自定义方法haha():
String.prototype.haha= function(){
var start,end;
start = 0;
end = str.length-1; while(start <= end && str.charAt(start)==' '){
start++;
}
while(start <= end && str.charAt(end)==' '){
end--;
}
return str.substring(start,end+1);//包含头不包含尾。
}
//然后字符串对象就可以调用haha()这个方法了。

3、Array对象:数组对象

方法如:concat():返回一个新数组,这个新数组是由两个或更多数组组合而成的。

4、date对象:日期对象

启用基本存储器并取得日期和时间。

5、Math对象:是一个固有对象,提供基本数学函数和常数。不用new创建对象可以直接调用。

6、Number对象:代表数值数据类型和提供数值常数的对象。

7、自定义对象

在js中可以使用function来模拟对象的创建过程。

方式1:

 <script type="text/javascript">
//自定义Person对象
function Person(){//相当于构造器 }
//通过描述直接进行对象的建立
var p = new Person();
var name = "张三";
var age = 20;
p.show = function(){
document.write(name+":"+age);
} p.show();
</script>

方式2:

 <script type="text/javascript">
//自定义Person对象
function Person(name,age){//相当于构造器
this.name = name;
this.age = age;
this.setName = function(name){
this.name = name;
}
this.setAge = function(age){
this.age = age;
}
this.show = function(){
document.write(this.name+":"+this.age);
}
} var p = new Person("张三",22);
p.setName("哈哈");
p.setAge(20);
p.show();
</script>

方式3:另一种封装方式:

 <script type="text/javascript">
var pp = {
//定义对象(逗号隔开)
"name":"李四",
"age":20,
"show":function(){
return this.name+":"+this.age;
}
} document.write(pp.show());
</script>

方式4:等等

三、特殊语句:with

with 语句通常用来缩短特定情形下必须写的代码量。在下面的例子中,请注意 Math 的重复使用:

 x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10)
y = Math.tan(14 * Math.E)

当使用 with 语句时,代码变得更短且更易读:

 with (Math){
x = cos(3 * PI) + sin (LN10)
y = tan(14 * E)
}

JavaScript简单入门(补充篇)的更多相关文章

  1. 一篇文章带你了解网页框架——Vue简单入门

    一篇文章带你了解网页框架--Vue简单入门 这篇文章将会介绍我们前端入门级别的框架--Vue的简单使用 如果你以后想从事后端程序员,又想要稍微了解前端框架知识,那么这篇文章或许可以给你带来帮助 温馨提 ...

  2. BAT脚本编写教程简单入门篇

    BAT脚本编写教程简单入门篇 批处理文件最常用的几个命令: echo表示显示此命令后的字符 echo on  表示在此语句后所有运行的命令都显示命令行本身 echo off 表示在此语句后所有运行的命 ...

  3. Javascript之入门篇(一)

    上一篇学习了什么是JavaScript语言及其作用和特有的特点等,本篇将详细介绍JavaScript一些入门使用方式. 对于初学者来讲,由于JavaScript是嵌入到HTML页面里面的,首先创建一张 ...

  4. Linux入门基础篇

    Linux入门基础篇 Linux诞生 Linux发行版本说明 Linux官方网站 Linux内核官方网站 比较有名的Linux发行版 虚拟机(Virtual Machine),一个虚拟的系统,安装在系 ...

  5. Java的多线程 简单入门

    Java的多线程 简单入门 首先能够先搞清楚什么是程序.进程.线程,以及它们之间的关系: 定义: 一 程序仅仅是一组指令的有序集合.它是静态的 二 进程是具有一定独立功能的程序关于某个数据集合上的一次 ...

  6. 《IM开发新手入门一篇就够:从零开发移动端IM》

        登录 立即注册 TCP/IP详解 资讯 动态 社区 技术精选 首页   即时通讯网›专项技术区›IM开发新手入门一篇就够:从零开发移动端IM   帖子 打赏 分享 发表评论162     想开 ...

  7. 一篇文章带你了解NoSql数据库——Redis简单入门

    一篇文章带你了解NoSql数据库--Redis简单入门 Redis是一个基于内存的key-value结构数据库 我们会利用其内存存储速度快,读写性能高的特点去完成企业中的一些热门数据的储存信息 在本篇 ...

  8. 用IntelliJ IDEA创建Gradle项目简单入门

    Gradle和Maven一样,是Java用得最多的构建工具之一,在Maven之前,解决jar包引用的问题真是令人抓狂,有了Maven后日子就好过起来了,而现在又有了Gradle,Maven有的功能它都 ...

  9. [原创]MYSQL的简单入门

    MYSQL简单入门: 查询库名称:show databases; information_schema mysql test 2:创建库 create database 库名 DEFAULT CHAR ...

随机推荐

  1. SpringCloud学习笔记(2)——Ribbon

    参考SpringCloud官网第16.17章 16. Client Side Load Balancer: Ribbon Ribbon是一个客户端的负载均衡器,它提供对大量的HTTP和TCP客户端的访 ...

  2. robotframework文本类型的下拉框

    对于下拉框定位和输入,这里主要遇到有两种类型的下拉选择. 其中一个类型是select-options格式,如图 这种方式的定位可以使用select from list by value或select ...

  3. Javascript-数值运算 保留小数点位数,并对最后一位小数各种取整方法

    今天遇到Javascript数值运算的坑,说到底,还是用得少啊.得多用多敲代码多遇坑. 先介绍以下三个Javascript number取整运算方法. Math.floor() 对一个数退一取整 例: ...

  4. 《RabbitMQ Tutorial》译文 第 2 章 工作队列

    源文来自 RabbitMQ 英文官网的教程(2.Work Queues),其示例代码采用了 .NET C# 语言. In the first tutorial we wrote programs to ...

  5. video视频铺满

    1. 因项目需求,要在公司官网加一段视频,达到的效果是视频平铺整个网页,大小随网页变化:网上找了许久才找了了这么一个生僻的属性,只需给video加这么个样式就可以了:object-fit: fill; ...

  6. HDU 1014 Uniform Generator 欧几里得

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1014 解题思路: 1. 把题目意思读懂后,明白会输入两个数,然后根据题中的公式产生一系列伪随机数,看这 ...

  7. android应用集成google登录

        集成google登录之前需要有一下三点要求,只有具备一下两点要求才能集成google登录:         1,android 运行版本4.0及更新版本         2,android 设 ...

  8. Ubuntu使用之Svn命令小技巧

    注: [svn Path]:是指要代替码分支的server绝对路径 [Path]:是指终端相对当前文件夹的相对路径.假设是在当前文件夹下,就省略路径 ①.取svnserver的代码: svn co [ ...

  9. python 金融网贷数据,pandas进行数据分析并可视化系列 (词频统计,基本操作)

    需求: 某某金融大亨想涉足金融网贷,想给网贷平台取一个名字,那么取什么名字,名字里面包含哪些关键字,在行业内的曝光率会相比较高一些呢? 可以理解为: 你负责某某网贷平台的网络推广工作,如何进一步优化各 ...

  10. 二、spring Boot构建的Web应用中,基于MySQL数据库的几种数据库连接方式进行介绍

    包括JDBC.JPA.MyBatis.多数据源和事务. 一.JDBC 连接数据库 1.属性配置文件(application.properties) spring.datasource.url=jdbc ...