java script的小基础

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37252374/article/details/54023064

      javascript是一种弱数据类型的脚本语言,这种语言呢,通常广泛的运用于web前端开发中,web前端开发由三个层面组成,第一层是结构,即是html,(hyper text markup language)超文本标记语言;第二层是样式,即是css,(cascading style sheet)层叠式样式表;第三层是行为,即是js(java script)脚本语言。

      html在web制作中起到搭建框架的一个作用,用标签来搭建框架,css是赋予html的标签的一定的属性和属性值,js是用来实现web中的一些特效,js的作用有三点:用户交互;表单验证;网页特效

      ECMAScript 中有5 种简单数据类型(也称为基本数据类型):Undefined、Null、Boolean、Number
和String。还有1 种复杂数据类型——Object,Object 本质上是由一组无序的名值对组成的。ECMAScript
不支持任何创建自定义类型的机制,而所有值最终都将是上述6 种数据类型之一。乍一看,好像只有6
种数据类型不足以表示所有数据;但是,由于ECMAScript 数据类型具有动态性,因此的确没有再定义
其他数据类型的必要了。

     在js中有基本的数据类:数字类型(顾名思义即是数字)、字符串类型也叫string类型(其特征是有引号,引号中文字或字母,数字也可以是字符串,只要加在引号中,在js中字符串的引号是双引号或单引号都可以,要英文状态下引号才可以),例如这样var a='236';var i="niho";var k=" 你好吗?"、空类型(值为null)、未定义类型(undefined)、boolean类型(布尔类型false、true)。

      typeof操作符就是用来鉴于ECMAScript 是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof 就是负责提供这方面信息的操作符。对一个值使用typeof 操作符可能返回下列某个字符串:
 "undefined"——如果这个值未定义;
 "boolean"——如果这个值是布尔值;
 "string"——如果这个值是字符串;
 "number"——如果这个值是数值;
 "object"——如果这个值是对象或null;
 "function"——如果这个值是函数。
下面是几个使用typeof 操作符的例子:
var message = "some string";
alert(typeof message); // "string"
alert(typeof(message)); // "string"
alert(typeof 95); // "number"

      1、Undefined类型
Undefined 类型只有一个值,即特殊的undefined。在使用var 声明变量但未对其加以初始化时,
这个变量的值就是undefined,例如:
var message;
alert(message == undefined); //true
UndefinedExample01.htm
这个例子只声明了变量message,但未对其进行初始化。比较这个变量与undefined 字面量,结
果表明它们是相等的。这个例子与下面的例子是等价的:
var message = undefined;
alert(message == undefined); //true
UndefinedExample02.htm
这个例子使用undefined 值显式初始化了变量message。但我们没有必要这么做,因为未经初始
化的值默认就会取得undefined 值。

      2、Null类型
Null 类型是第二个只有一个值的数据类型,这个特殊的值是null。从逻辑角度来看,null 值表
示一个空对象指针,而这也正是使用typeof 操作符检测null 值时会返回"object"的原因,如下面
的例子所示:
var car = null;
alert(typeof car); // "object"

       3、Boolean类型
Boolean 类型是ECMAScript 中使用得最多的一种类型,该类型只有两个字面值:true 和false。
这两个值与数字值不是一回事,因此true 不一定等于1,而false 也不一定等于0。以下是为变量赋
Boolean 类型值的例子:
var found = true;
var lost = false;
需要注意的是,Boolean 类型的字面值true 和false 是区分大小写的。也就是说,True 和False
(以及其他的混合大小写形式)都不是Boolean 值,只是标识符。
虽然Boolean 类型的字面值只有两个,但ECMAScript 中所有类型的值都有与这两个Boolean 值
等价的值。要将一个值转换为其对应的Boolean 值,可以调用转型函数Boolean(),如下例所示:
var message = "Hello world!";
var messageAsBoolean = Boolean(message);

        4、Number类型
Number 类型应该是ECMAScript 中最令人关注的数据类型了,这种类型使用IEEE754 格式来表示
整数和浮点数值(浮点数值在某些语言中也被称为双精度数值)。为支持各种数值类型,ECMA-262 定
义了不同的数值字面量格式。
最基本的数值字面量格式是十进制整数,十进制整数可以像下面这样直接在代码中输入:
var intNum = 55; // 整数
除了以十进制表示外,整数还可以通过八进制(以8 为基数)或十六进制(以16 为基数)的字面值
来表示。其中,八进制字面值的第一位必须是零(0),然后是八进制数字序列(0~7)。如果字面值中的
数值超出了范围,那么前导零将被忽略,后面的数值将被当作十进制数值解析。请看下面的例子:
var octalNum1 = 070; // 八进制的56
var octalNum2 = 079; // 无效的八进制数值——解析为79
var octalNum3 = 08; // 无效的八进制数值——解析为8

        5、 String类型
String 类型用于表示由零或多个16 位Unicode 字符组成的字符序列,即字符串。字符串可以由双
引号(")或单引号(')表示,因此下面两种字符串的写法都是有效的:
var firstName = "Nicholas";
var lastName = 'Zakas';
与PHP 中的双引号和单引号会影响对字符串的解释方式不同,ECMAScript 中的这两种语法形式没
有什么区别。用双引号表示的字符串和用单引号表示的字符串完全相同。不过,以双引号开头的字符串
图灵社区会员 StinkBC([email protected]) 专享 尊重版权

      2. 字符串的特点
ECMAScript 中的字符串是不可变的,也就是说,字符串一旦创建,它们的值就不能改变。要改变
某个变量保存的字符串,首先要销毁原来的字符串,然后再用另一个包含新值的字符串填充该变量,
例如:
var lang = "Java";
lang = lang + "Script";
以上示例中的变量lang 开始时包含字符串"Java"。而第二行代码把lang 的值重新定义为"Java"
与"Script"的组合,即"JavaScript"。实现这个操作的过程如下:首先创建一个能容纳10 个字符的
新字符串,然后在这个字符串中填充"Java"和"Script",最后一步是销毁原来的字符串"Java"和字
符串"Script",因为这两个字符串已经没用了。这个过程是在后台发生的。
       浏览器(例如版本低于1.0 的Firefox、IE6 等)中拼接字符串时速度很慢的原因所在。但这些浏览器后
来的版本已经解决了这个低效率问题。

       转换为字符串
要把一个值转换为一个字符串有两种方式。第一种是使用几乎每个值都有的toString()方
这个方法唯一要做的就是返回相应值的字符串表现。来看下面的例子:
var age = 11;
var ageAsString = age.toString(); // 字符串"11"
var found = true;
var foundAsString = found.toString(); // 字符串"true"
StringExample01.htm
数值、布尔值、对象和字符串值(没错,每个字符串也都有一个toString()方法,该方法返回字
符串的一个副本)都有toString()方法。但null 和undefined 值没有这个方法。
多数情况下,调用toString()方法不必传递参数。但是,在调用数值的toString()方法时,可
以传递一个参数:输出数值的基数。默认情况下,toString()方法以十进制格式返回数值的字符串表
示。而通过传递基数,toString()可以输出以二进制、八进制、十六进制,乃至其他任意有效进制格
式表示的字符串值。下面给出几个例子:
var num = 10;
alert(num.toString()); // "10"
alert(num.toString(2)); // "1010"
alert(num.toString(8)); // "12"
alert(num.toString(10)); // "10"
alert(num.toString(16)); // "a"
StringExample02.htm
通过这个例子可以看出,通过指定基数,toString()方法会改变输出的值。而数值10 根据基数的
不同,可以在输出时被转换为不同的数值格式。注意,默认的(没有参数的)输出值与指定基数10 时
的输出值相同。
在不知道要转换的值是不是null 或undefined 的情况下,还可以使用转型函数String(),这个
函数能够将任何类型的值转换为字符串。String()函数遵循下列转换规则:
1、 如果值有toString()方法,则调用该方法(没有参数)并返回相应的结果;
2、如果值是null,则返回"null";
3、如果值是undefined,则返回"undefined"。
下面再看几个例子:
var value1 = 10;
var value2 = true;
var value3 = null;
var value4;
alert(String(value1)); // "10"
alert(String(value2)); // "true"
alert(String(value3)); // "null"
alert(String(value4)); // "undefined"

      js中的命名是有规则的,是采取驼峰命名法、匈牙利命名法帕斯卡命名法,命名是变量名是在数据类型后,var(一种强数据类型)   i(变量名)   =(赋值运算符)驼峰命名法是指首个单词字母小写,后面的单词首字母要大写,例如:var  oBut=25;而匈牙利命名法是跟驼峰命名法差不多,只不过首字母小写是数据类型的前缀 ,例如:var sUserName = 'css8';再则是帕斯卡命名法,也跟驼峰命名法差不多,与驼峰命名法不同在于它的首字母要大写例如:var PrintLoadTemplates;
   







猜你喜欢

转载自blog.csdn.net/qq_37252374/article/details/54023064
今日推荐