javascript学习(1)——[基础回顾]变量、声明、数据类型、类型转换


本次javascript的学习,主要面向对象是有一定javascript基础的,当然即便是你不是特别懂,我个人推荐一本浅显易懂的书《Head Frist Javascript》,这本书比较简单,而且浅显易懂,非常适合javascript的入门学习。哈哈,顺势,做下这本书的“广告”啦。


简单的在javascript的设计模式学习之前,先回顾下javascript的基本知识,不能面面俱到,但是也能够起到简单的回忆作用。


变量:

我们可以认为它是一个存储信息的容器,命名规范,这里不多说,百度一下或者java等程序员应该也比较清楚,而且它是大小写敏感的,Y和y就是不一样的。

另外,我觉得值得一说的是:

javascript声明不像java这种语言一样,这么规范,它可以说是一种弱类型语言,也就是说你声明初是string类型的时候,以后还可以再改变,这个的确是提供了很大的开放性,但是个人觉得不推荐这种做法,因为本身这样会使你自己都会觉得很麻烦。

另外还有关于变量的一点是,声明用var 声明,而且即便你不用var声明也是可以的,此时是全局变量。


数据类型:

简单列举下常用的javascript中的数据类型,string number boolean array

这里边比较常用的是,string和number之间的转换时比较常见的,下面简单贴一段代码,大家自己看下,说不定会用到:

/**
 * 数据类型和类型转换
 */
(function(){
/**
 * 基本数据类型(3种)
 * (1)数字 number
 *   例如 3.1415927 ,0.251,.2,100,1.478E
 * (2)字符串
 *   string
 * (3)布尔 booble
 */
 //数字型转字符串
 var num1 = 3.1415927;
 var str1 = Number.toString(num1); 
 document.write(typeof str1 == "string");//true
 document.write("
") //四舍五入 var num2 = num1.toFixed(2); document.write(num2); document.write("
") //返回指定的位数的数字 var num3 = num1.toPrecision(4); document.write(num3); document.write("
") //(Math) 介绍一点方法 //四舍五入round document.write(Math.round(4.7)); document.write("
") //随机出处理0~1 document.write(Math.random()); document.write("
") //0~10的随机数 floor向下取整 document.write(Math.floor((Math.random()*11))); document.write("
") document.write("-------------------------------
") //字符串 //注意(转义) pca't 要输入 pca\'t \n 换行 /** \' \" \& 和号+ \\ \n \r 回车 \t 制表符 \b退格 \f 换页 */ //属性 length indexof substring chartAt(整数) //indexof判断所需要的字符串在第几位,如果没有的话范围-1 //如何转成数字 var str2 = "USPCAT.COM"; var str3 = "3.14"; var number = Number(str3); document.write(typeof number == "number"); document.write("
") document.write((str2 - 0)+"
");//NaN 非数值 document.write((str3 - 1)+"
");//如果是减法他回自动将字符串转成数字 document.write((str3 + 1)+"
");//加法会当成字符串的拼接操作 //布尔类型(boolean) //true | false var s = ""; var o = {};//true var l = [];//true var n = null; var f = false; var u = undefined; document.write("-------------------------------
") if(!s){ document.write("s is false
") } if(!o){ document.write("o is false
") } if(!l){ document.write("l is false
") } if(!n){ document.write("n is false
") } if(!f){ document.write("f is false
") } if(!u){ document.write("u is false
") } /** s is false f is false u is false n is false */ if(str != "" && str != null && str != undefined){ //... } if(str){ //... } /** * 2复合类型 * (1)数组-->有序的集合(array):下标(index) 是从0开始的 * 例子 * var arr = new Array(); * (2)特殊的对象-->函数(function) */ /** * 特殊值 * (1)null 不是有效的对象\数组\数组\字符串 他们为空 * (2)undefined 他是代表没有定义 和空不是一个概念 * [没有] 但是有容器 有一个盒子但是盒子里面没有东西 * undefined 连盒子也没有 */ /** * 内置特殊对象 * Data对象 * Error错误对象 * ReExp对象 */ })()

另外简单列举一下javascript中的array这种数据类型的用法,同样贴一段代码:

/**
 * 数据类型和类型转换
 */
(function(){
	/**
	  * 2复合类型
	  * (1)数组-->有序的集合(array):下标(index) 是从0开始的	 
	 */
	//属性
	//constructor 返回对创建此对象的数组的函数引用
	//index 
	//input
	//*length
	//方法
//	*concat 合并数组
//	*join 把数组按照一定的各式进行串联
//	*push 数组的追加
//	*pop 删除数组返回的最后一个元素
	//sort toString shift 删除并且返回数组的第一个元素
	var arr = new Array();
	arr.push(1);
	arr.push(55);
	arr.push(5);
	arr.push(3);
	arr.push(9);
	//alert(arr.length)
	var arr2 = [1,2,3,45,6,7,8];
	//alert(arr2.join(":"));
	//alert(arr.concat(arr2).toString())
	for (var i = 0; i < arr2.length; i++) {
		document.write(arr2[i]+"
"); } //扩展array的方法 Array.each = function(array,fn){ for (var i = 0; i < array.length; i++) { fn(array[i]) } } Array.each(arr2,function(v){ document.write(v+"
"); }) })()

相信通过本次博客,你有可能有收获,但是也有可能,没有特别的收获,总之,本次并非是面向初学者设计的javascript设计,还请理解,简单回顾而已。

你可能感兴趣的:(javascript,java,人工智能)