JavaScript的基础知识

时间:2020-11-20 19:30:35 JavaScript 我要投稿

JavaScript的基础知识

  var a=false;

JavaScript的基础知识

  !a&&alert("hi");

  解释 a为真才继续往下执行,所以会弹出hi

  var a=a||"hi";

  解释 当a为假的时候会继续执行,当a为真的时候跳出这个语句,所以可以通过这个办法复制默认值

  上面的方法并非所有语言都是如此处理,比如PHP

  $a=@$a||"hi";

  echo $a;//1

  php把(@$a||"hi")之后的值赋值过去了...

  $a=true;

  !$a&&echo "hi";

  直接报错:syntax error, unexpected T_ECHO

  关于prototype

  很多情况下看到prototype都想到只有对象的情况下有

  var add=function(){alert("b");}

  add.prototype.a = function () {alert("hi");}

  new add.prototype.a;

  第一反应,可能会报错,其实不然,当没有生产对象的时候,可以通过add.prototype.a的方式直接调用静态的方法的

  JS挺会误导人的.,咳

  选择器问题:

  有时候需要选择一个节点下的子节点,用childNodes取值FIREFOX,IE的不同让人很郁闷

  document.getElementsByTagName("head")[0].getElementsByTagName("script")[0];

  上面的方法结果用在head标签阶段还好,用在其他的不怎么好用了

  所有觉得还是用个类名作处理好点

  复制代码 代码如下:

  function getclassnode(classname,doc){

  doc=doc||document;

  var node=[],i=0,j=0,t;

  var allnode=doc.getElementsByTagName("*");

  while(t=allnode[i]){

  if(RegExp(classname).test(t.className)){

  node[j]=t;

  j++;

  }

  i++;

  }

  return node;

  }

  自从用了JQ后,把原生的JS操作都忘的差不多了,偶尔复习下,感觉特麻烦,郁闷.

  补上一点今天发现的JS要注意的地方,如果一个JS已经引入到了当前文档,即使移除引入节点,通过该引入JS文件定义的变量,函数等仍然有效,因为已经加载到了当前的文档环境,如下代码:

  复制代码 代码如下:

  document.getElementsByTagName("head")[0].removeChild(document.getElementsByTagName("head")[0].getElementsByTagName("script")[0]);

【JavaScript的基础知识】相关文章:

1.关于javascript的基础知识

2.javascript基础知识大全

3.回顾JavaScript基础知识小结

4.JavaScript 基础知识问答二

5.如何理解JavaScript表单的基础知识

6.javascript的方法

7.调用javascript

8.Javascript模板