js学习第一天-----基本类型数组及常见的内置函数

来源:互联网 发布:把字符串放到数组中 编辑:程序博客网 时间:2024/05/01 22:30

一、javascript的基本类型:

      1.number 2.string 3.object 4.boolean 5.undefined 6.null

      对应的例子有: 

      1. alert(typeof 12341) 

      2.alert(typeof "hello")  

      3.var a = null; alert(a);

      4.var b;  alert(b);

      5.var c = document.getElementById("div1")   div1不存在,此时alert(typeof c)为null类型

      上例中 a和b的值都是null但是a的类型为object b的类型为undefined

二、js的布尔判断

   var str;

   if(str){ alert("true") }

   str在一下情况下为true

   str为字符串型但除了空字符串,str为数字除了0,str为object

   null和undefined都是false

/*
演示基本
数据类型
*/

function f1(){
var i = 100;
i = "hello js";
i = 100.08;
//alert(typeof i);
var str = 'hello java';
var flag = false;
//alert(typeof flag);
var t = null;
//alert(typeof t);
var t2;
alert(typeof t2);
}

/*
布尔类型
以下几种情况,boolean值为true
a,字符串,只要不为空字符
b,数字只要非0
c,对象
null和undefined为false
*/

function f2(){
//var str="abc";
//var str = 100;
//var str = new Object();
var str;
if(str){
alert("true!");
}else{
alert("false");
}
}

/*
数据类型的转换
parseInt()
parseFloat()
*/

function f3(){
//var str = "123.03";
//var i = parseInt(str) + 100;
//var i = parseFloat(str) + 100;
//alert(i);

//var str2 = "12a3";
//var i = parseInt(str2) + 100;
//alert(i);

var str3 = "123a";
//isNaN():如果为非数字,返回true
if(isNaN(str3)){
//alert('非数字');
}else{
//alert('数字');
}

var i = 100;
var str4 = i.toString() + "234";
alert(str4);
}

/*
比较操作 
==:比较值
===:比较类型和值
*/

function f4(){
var str1 = "123";
var str2 = "123";
var str3 = 123;
if(str1 == str2){
//alert('str1等于str2');
}
if(str1 === str3){
//alert('str1等于str3');
}
var s1 = null;
var s2;
alert(s1 == s2);
}

三、有关js的全局变量与局部变量

    var i = 1声明在script中或者语句块中都都为全局变量

    j = 2声明在函数中没有用var声明也是全局变量

   只有var j=3声明在函数中才为局部变量

   代码如下:

     var i = 1;//全局变量
function f1(){
//alert(i);
var j = 100;
//在函数内部,使用var声明的变量是一个局部变量
j2 = 100;//此时,是全局变量
}
f1();
//alert(j2);

//没有语句块作用域
for(i=0;i<100;i++){
var j3 = 100;
}
alert(j3);

四、数组问题

  数组的声明方式有两种:

   1.是var arr  = new Array(); 然后arr[0],arr[1]赋值进去

   2.是var arr = [1,3,5];是以中括号括起来的

数组的常规用法如下:

//创建数组的第一种方式
function f1(){
var arr = new Array();
arr[0] = 1;
arr[3] = '2';
alert(arr.length);
}

//创建数组的第一种方式
function f2(){
var arr = [1,2,4];
alert(arr.length);
}

//创建二维数组
function f3(){
var arr = new Array;
arr[0] = [3,1,22];
arr[1] = [8,13];
for(i=0;i<arr.length;i++){
for(j=0;j<arr[i].length;j++){
alert(arr[i][j]);
}
}
}

//数组对象的常用方法
function f4(){
var arr = [3,4,5];
//alert(arr.toString());
var arr1 = [11,2,3];
var arr2 = [99,12];
var arr3 = arr1.concat(arr2);//形成一个新的数组
//alert(arr1);
var arr4 = [3,4,11];
var str = arr4.join('|');
//alert(str);
var arr5 = [5,3,2,1];
var arr6 = arr5.reverse();//没有形成新的数组
//alert(arr5);
var arr7 = [11,22,12,90,33];
var arr8 = arr7.slice(2,4);//不包括4,形成新的数组
//alert(arr7);
}

//数组的排序
function f5(){
var arr = [19,24,522,32,87];
//var arr = ['bbbc','ab','ddc'];
arr.sort(function(a,b){
//return -(a.length - b.length);
return b - a;
});
alert(arr);
}

//堆栈
function f6(){
var arr = [22,11,33];
arr.push(66,99);
var obj = arr.pop();
alert(obj);
alert(arr.length);
}

//队列
function f7(){
var arr = [22,11,33];
var obj = arr.shift();
obj = arr.shift();
alert(obj);
alert(arr.length);
}


原创粉丝点击