js笔记

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

stringObject.indexOf(searchvalue,fromindex)

注释:indexOf() 方法对大小写敏感!

注释:如果要检索的字符串值没有出现,则该方法返回 -1。

substring() 方法用于提取字符串中介于两个指定下标之间的字符。

stringObject.substring(start,stop)

重要事项:与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数。

3、Navigator 对象包含有关浏览器的信息。 

4、合并数组 arr1 和数组 arr2。不要直接修改数组 arr,结果返回新的数组

链接:https://www.nowcoder.com/questionTerminal/ba9ee11affbd44539a4104d7f098f06b
来源:牛客网

//利用concat
function concat(arr1, arr2) {
     return arr1.concat(arr2);
}
//利用slice+push.apply
function concat(arr1, arr2) {
     var newArr=arr1.slice(0);
     [].push.apply(newArr, arr2);
     return newArr;
}
//利用slice+push
function concat(arr1, arr2) {
     var newArr=arr1.slice(0);
     for ( var i=0;i<arr2.length;i++){
         newArr.push(arr2[i]);
     }
     return newArr;
}
//普通的迭代拷贝
function concat(arr1, arr2) {
     var newArr=[];
     for ( var i=0;i<arr1.length;i++){
         newArr.push(arr1[i]);
     }
     for ( var j=0;j<arr2.length;j++){
         newArr.push(arr2[j]);
     }
     return newArr;
}

5、鼠标悬停 弹窗显示:

css设置标签{display:none;},然后再js控制显示隐藏。

6、str.indexOf(search,index);index是非必选项,indexOf对search的大小写敏感。

7、if(null){}   //if中的null转为boolen是false

8、var momement = setTimeout(funtion(){document.write(222222222222);},2000);console.log(momement);//1

setTimeout返回的值是一个句柄,可以用clearTimeout(momement)来取消这个setTimeout.,一般代码中也需要加上这个函数。

9、var ans= pattern.test(string); test()方法返回的值是true ,false.

10、有时候var car=new foo() 等于 var car=new foo.前提是foo()中不传递任何参数。

任何函数,只要通过new运算符调用,就可以作为构造函数,不通过new调用,则就是普通函数。

function Person(name){
this.name=name;
this.sayname=function(){
console.log(this.name);
}
}
var o=new Object();
Person.call(o,"xiao");
o.sayname();  //xiao

call()的作用是让Person()函数在对象O的作用域调用的,因此调用后o就拥有了所有的属性和sayName()方法。

11、$(this).parent().parent()返回的是整个父标签对象,相当于$(), 例子:$(this).parent().parent().css("color","red");

$(this).parent().parent().attr('id')获取父标签的父标签的id名字。

同理children().

12、判断该标签是否隐藏:Is()

if(cli.is(':hidden')){//如果当前隐藏
cli.show();
}else{
cli.hide();
}

13、获取点击对象的id:

尽量使用event.target.id,不要使用this.id
当使用事件委托的时候,this指向的是绑定监听事件的元素,而非被点击的元素。event.target.id则始终指向被点击的元素。

$("xxx").click(function(){

方法一:var a=event.target;

console.log(a.id);

方法二:$(this).id

方法三:console.log($(this).parent().parent().attr('id')); 获取父元素的父元素的id.

})

由此可推,获取点击对象的方法:

方法一:var a=event.target;

方法二:$(this)

具体的例子:

$("li span").click(function(event){
var e=event.target;
console.log(e);  //点击span标签得到span
var cli=$(e).parent().parent().children("div.hid");  //注意,要这样写$(e),不能$("e") 有疑问可以搜索jq字符串拼接。

if(cli.is(':hidden')){//如果当前隐藏
cli.show();
}else{
cli.hide();
}
})

获取元素的标签名:var e=event.target;
console.log(e.tagName=='H3'); //true 注意:H3要加引号


显示隐藏 上下箭头切换

//显示隐藏
$("li ").click(function(event){
var e=event.target;
console.log(e.tagName=='SPAN');
var cli=$(e).parent().parent().children("div.hid");  

if(cli.is(':hidden')){
cli.show();
if(e.tagName=="SPAN"){
$(e).css("background-position","3.3rem 0");
}
if(e.tagName=="H3"){
$(e).next("span").css("background-position","3.3rem 0");
}
}else{
cli.hide();
$(e).css("background-position","0 0");
$(e).next("span").css("background-position","0 0");
}
})

14、<p>微信
<a>
<em>已绑定</em>
<span class="img_arrow"></span>
</a>
</p>
$('a').click(function(){
console.log(4);
})
注意:只要em和span标签被包裹在a标签中,点击任一一个标签,相当于点击了a标签,所以点击span标签会输出4.
15、
function getUrlPara(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if(r != null) return(r[2]);   //如果r对象存在,执行这个语句,则下面这句就不会执行了。这个语句返回的是一个数组
return null;   //null表示"没有对象",即该处不应该有值。undefined表示"缺少值",就是此处应该有一个值,但是还没有定义。
}


$('.help-right >div').click(function(){
var n=$(this).index();


Number = n;
if($(this).hasClass('showContent')){
$(this).removeClass("showContent");  //如果点击的元素有class(也就是展示了隐藏的部分),就移除class,让它隐藏。
}else{
$('.help-right div').removeClass("showContent");  //把之前点击后拥有class的元素隐藏,新点击的元素添加class,让元素显示。
$(this).addClass("showContent");
}

})
var index = getUrlPara("showIndex");


if(index && index > 0 && index < 8){
$('.help-right >div').eq(index).addClass('showContent');  //eq() 方法将匹配元素集缩减值指定 index 上的一个,也就是精确到哪个div
var title = $('.showContent li h3').eq(0).html();
$('title').text(title);
}








  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值