码迷,mamicode.com
首页 > 编程语言 > 详细

初学Java10:JavaScript小结(一)

时间:2016-10-13 21:44:07      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:

JavaScript小结

1.JavaScript是什么?动态的,弱类型
  (from W3School:http://www.w3school.com.cn/js/index.asp )
  JavaScript 是属于网络的脚本语言!
  JavaScript 被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。
  JavaScript 是因特网上最流行的脚本语言。

2.实现:<script type="text/javascript"></script>标签。

3.语句、注释、标识符(变量名,函数名)、保留字

4.变量:弱类型

  变量类型是可变的

5、数据类型:typeof运算符
  undefined
  Null == undefined
  Boolean (类型转换:if(‘yes‘){....})
  Number NaN!=NaN, isNaN ,类型转换parseInt("1234.5abc"),parseFloat()
  String 类型转换:12.toString() 单引号,双引号
  function:函数类型

6.运算符:基本和java差不多,其中“==”是指比较内容,eg:var a="123";var b=123;alert(a==b);//true
                “===”是比较内容和类型,eg:var a="123";var b=123;alert(a===b);//false

7.控制语句:基本和java差不多

8.函数
  1)普通定义与调用
  2)动态参数arguments,下例:

 1   function plus(){
 2     //参数对象(数组)
 3     if(arguments.length>0){
 4         var sum=0;
 5         for(var i=0;i<arguments.length;i++){
 6         sum+=arguments[i];
 7       }
 8     }
 9     return sum;
10   }
11 //调用
12 var x=plus(10,20,30,40);
13 alert(x);//=100

  3)匿名定义和调用,匿名函数定义,定义匿名函数,将函数地址赋值给变量

9.基本类型(undefined,null,number,boolean,string)/引用类型:Object 、Array、Function
  1)动态属性: delete p.name
  2)复制引用:

var o1=new Object();
var o2=o1;
o1.name=‘ada‘;
alert(o2.name);//ada

3)传递参数 不能通过参数在函数内部改变外部对象
4)类型检测 instanceof

10.作用域:变量的有效范围
1)执行环境;每个函数就是一个执行环境
2)作用域链
3)搜索变量
4 )没有块级作用域
5)声明变量(var)自动添加到最近的环境,未声明变量直接添加到全局环境

11.Object创建的两种方式
1)new Object()
2){"name":"ada","sex":"male"} //JSON方式
eg://Object对象创建的方式

//1.new
var p=new Object();
p.name="ada";
//2.JSON
var p={"name":"ada","sex":"male"};
alert(p.name);
alert(p.sex);
//属性访问方式
alert(p["name"]);
alert(p["sex"]);
//遍历全部属性
for(var a in p){
document.write(p[a]);
}

12.Array
  1)创建:new Array();

//1.
var a=new Array(4);
alert(a.length);
//2.
a[0]=1;
a[1]=2;
a[3]=4;
alert(a[2]);

  2)创建并初始化: a=[1,2,3];
  3)数组动态性

var a=[1,2,3];
a[10]=11;
alert(a.length);//11
alert(a[3]);//undefined//a[3]---a[9]都是undefined

  4)转换:toString()
  5)push():添加尾元素

var a=[1,2,3];
a.push(4);//压栈
alert(a);//1,2,3,4

  6)shift():删除头元素

var a=[1,2,3,4];
var x=a.shift();
alert(x);//2,3,4

  7)sort(a,function(v1,v2){}),排序

var a=[15,1,3,5,20,50];
a.sort(function(v1,v2){
    if(v1>v2){
        return 1;
    }else if(v1<v2){
        return -1;
    }else{
        return 0;
    }
});
alert(a);//顺序,从小到大,1,3,5,15,20,50    

  8)slice(start,end)截取

var a=[1,2,3,4,5,6,7,8];
var b=a.slice(2,6);
alert(b);//3,4,5,6

  9)splice :删除(0,2),插入(2,0,"aaa"),替换(2,1,"aaa)
  10)indexOf,返回某个指定的字符串值在字符串中首次出现的位置
  11)arr.forEach(function(item,index,array){});//迭代
  12)arr.every/arr.some
  13)filter筛选,eg: 筛选:10以上的元素

var a=[15,2,12,3,5,11,18];
var b=a.filter(function(item,index,array){
return item>10;
});
alert(b);//15,11,18

13.Date:
  1)创建 new Date()/new Date(2010,5,6,14,25,30)
  2)date.now()
  3)date.getTime()/getYear()/getMonth()/getDay()/getDate()

14.Function
  1)函数作为参数值
  2)caller
  function A(){B();}
  function B(){alert(B.caller);}
3)函数是对象:
  length属性,参数个数

apply();
call();
window.color="red";
var o={color:"blue"}
function sayColor(){
alert(this.color);
}
sayColor.call(window);
sayColor.call(o);
var oSayColor=sayColor.bind(o);
oSayColor();

15.Global终极对象
  eval方法,将字符串转化为表达式
  eg:var jstu=eval("("+jstr+")");//代码注入攻击,少用

16.Math对象(from W3School:http://www.w3school.com.cn/jsref/jsref_obj_math.asp )
方法      描述
abs(x)    返回数的绝对值。
acos(x)    返回数的反余弦值。
asin(x)    返回数的反正弦值。
atan(x)    以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。
atan2(y,x)   返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。
ceil(x)     对数进行上舍入。
cos(x)     返回数的余弦。
exp(x)    返回 e 的指数。
floor(x)   对数进行下舍入。
log(x)     返回数的自然对数(底为e)。
max(x,y)  返回 x 和 y 中的最高值。
min(x,y)   返回 x 和 y 中的最低值。
pow(x,y)    返回 x 的 y 次幂。
random()    返回 0 ~ 1 之间的随机数。
round(x)   把数四舍五入为最接近的整数。
sin(x)     返回数的正弦。
sqrt(x)   返回数的平方根。
tan(x)    返回角的正切。
toSource() 返回该对象的源代码。
valueOf()   返回 Math 对象的原始值。

    2016-10-13

初学Java10:JavaScript小结(一)

标签:

原文地址:http://www.cnblogs.com/a-zhi/p/5958134.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!