您的位置:首页 > Web前端 > JavaScript

Javascript 知识点简介

2016-10-03 10:50 309 查看
如何在HTML中引入JS?

所有重定向的HTML标签内都可以嵌入javascript代码。

浮点数不要用 == 来进行判断

var
num=0;
for(var
i=0;i<10;i++){
num += 0.1;
} alert(num);
// num:0.9999999999999

boolean 类型

不同于.NET只判断true或false,JS里 0, 0.00, "", null 返回的都是
false函数

普通声明:

function test(){};function test(arg1,arg2..argN){}

匿名函数:

var test =
function(){
}

回调函数:

(仅靠传递变量搞不定的,可以传递函数)

function
test(a,b,funA){
return funA(a,b); // 方法执行由用户传入的函数决定 最典型的示例是
数组的sort()方法可以接收指定的排序规则}

函数调用方式:

function
test(){
alert("Hello");}test();

var fun1 == test;fun1(); //
函数也能赋值给变量,因此函数也是数据类型的一种alert(fun1); // result:输出整个函数的声明(这里指的声明包括
函数名 和 代码段)

函数参数:

function
numAdd(num1,num2){
return num1 + num2;}numAdd(3,5) // 常规调用numAdd(2,4,6,8,10) //
非常规调用呢?其实fun也可以改写成下面这样:function
numAdd(){ var
result = 0;
for(var i=0;i

参数的默认值

function test(a,b)
{
if(typeof(a) == "undefined")
a=1;
if(typeof(b) == "undefined")
b=2;
}

function test(a,b)
{
if(!a)
a=1;
if(!b)
b=2;
}

function test(a,b)
{
// 最简洁的方式
a = a? a:1;
b = b? b:2;
}


我们在Javascript中声明的函数被加载到哪了?

window 对象。JS中,函数也是基于对象调用的,由于 window
对象可以省略,因此我们可以直接调用自己写过的函数!

global对象的 eval_r()方法
(△)

global 对象的 eval_r()方法相当于JS程序中的代码解析器 可以执行合法的字符串,示例:

var str = "var a="+ f +";a+=a"var f = 5;eval_r(str);alert(a); //
10

注:如果不执行 eval 方法是获取不到变量a的

自定义对象

由于没有Class的类的概念,而对象又是要new出来的 因此要通过函数才能创建出对象。



方式一:这个方法是最初设计的原型和构思

function person()
{
}

var p = new person();
p.name = "XJ"; // propertyp.age = 30;
p.play = function()
{ // method    document.write("Playing......");}


方式二:

var person = new Object();
person.name = "XJ"; // propertyperson.age = 30;
person.play = function(){ // method    document.write("Playing......");}


方式三:

function person(){
var p = new Object();
p.name = "XJ"; // property
p.age = 30;
p.play = function()
{ // method
document.write("Playing......");
}
return p;
}


获取对象: var p = person();

方式四:

function person(name,age,play)
{
this.name=name;
this.age=age;
this.play=play;//method
}

var p = new person("xj","30",
function{    document.write("Playing......");});

alert(p.name);p.play();


遍历对象的所有元素(属性,方法)

for(var tmpName in p){ alert(p[tmpName]);}

注意:这里获得的都是元素名,而不是元素的值,for..in对于数组而言获取的是索引。这是有别于C#中foreach的。

with 结构的用法

with(document){
write("Hello");}

with 语句块可以让使用对象的属性和方法变的语法更为简单,适用于多次操作一个对象的成员时。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: