短路算法、运算符优先级、获取html中的元素对象

短路算法

<script>
/*
逻辑运算的短路算法
表达式1 || 表达式2 表达式1为真的时候,表达式2不会被解析
表达式1 && 表达式2 表达式1为真的时候,表达式2才会被解析

*/
let num = 10;
num>2 && num++;
console.log(num);

let n = 10;
console.log( n<2||n++ );


</script>

运算符优先级

<script>
let bol1 = true;
let bol2 = false;

console.log( bol1 + 1); // 2
console.log( !bol2 + 1); // 2
console.log( 10 + !bol2 ); // 11
console.log( !10 ); // false
console.log( !0 ); // true
/*
1. !的优先级比 算术运算符的优先级高
2. boolean数据和number类型的数据运算的时候,布尔类型会隐式转化为number类型,其中 false=>0,true=>1

*/
console.log( 10<5+6 || '中午吃啥' );

let str = 10>(5+6 ||'中午吃啥');
console.log(str);
/*
优先级
1. 小括号 ()
2. !
3. 算术运算符
4. 比较运算符
5. 逻辑运算符
6. 赋值运算符

赋值的简写
= += -= *= /=

简写形式        含义
n+=1     =>    n=n+1;
n-=1     =>    n=n-1;
n*=1     =>    n=n*1;
n/=1     =>    n=n/1;

*/
let n = 10;
n+=5;// n = n + 5
console.log(n);

// 字符串拼接
let str1 = '日啖荔枝三百颗';
str1+='每天一碗胡辣汤';
str1+='每天一碗胡辣汤';
console.log(str1);
</script>

显示转换

<script>
/*
显式转化
把数据转化为字符串,使用 String()
把数据转化为number,使用 Number()
把数据转化为boolean,使用 Boolean()

另外,非0即为真
0, '', null,undefined 都会被转化为 false

*/
// 字符串 转 数字
let num = Number('唐伯虎');
console.log(typeof num);
// 数字 转 字符串
let str = String(1000);
console.log(typeof str);
// 把数据转为 bool值
let bol1 = Boolean('唐伯虎');
console.log(typeof bol1,bol1);

let bol2 =Boolean(' ');
console.log(typeof bol2, bol2);

let bol3 =Boolean(-1);
console.log(typeof bol3, bol3);
</script>

三元(目)运算符

<script>
/*
三元运算符 ?:

判断条件? 判断条件为真,则执行当前代码 :
判断条件为假,则执行当前代码
*/
// 执行 表达式
6>4 ? console.log('固始鹅块') : console.log('糍粑');

// 声明不同的变量值
let abc = 1<0 ? '秦琼' : '尉迟恭';

console.log( abc );

console.log( 5>6 ? '单雄信' : '罗成' );

//三元运算符嵌套
let username = 5<6 ? 6>7 ? '李元霸' : '宇文成都' : '杨广' ; 
console.log(username);

</script>

获取html中的元素对象

<script>
// 1.通过id 获取元素
let ul = document.getElementById('list');
ul.style.border = '1px #f00 solid';
/*
2.通过标签名获取元素
document.getElementsTagName('标签名')

特点:
1.调用对象可以是 document之外的对象
如果通过 document 对象获取的标签,则是获取页面上所有的标签对象
如果通过 其他对象 获取的标签,则是获取该对象下所有的标签对象
2. 获取的元素对象不仅仅是一个,可以有多个
3. 获取的标签对象存放在数组中,也就是该方法的返回值是一个数组

数组,在数组中可以存放任意类型的数据
let arr = ['电影','作业','美食','游戏',2134,345,true];

数组的下标从0开始计算,因此如果需要从数组中获取内容则:
arr[内容对应的下标]
*/
let li = document.getElementsByTagName('li'); 
console.log( li );
li[7].style.border='2px #00f solid';

let li1 = ul.getElementsByTagName('li');
li1[9].style.background= '#ff0';
console.log( li1 );
let arr = ['电影','作业','美食','游戏',2134,345,true];

console.log( arr[3] );

/*
3. 通过class类名获取元素
document.getElementsByClassName('class名');

返回值是 一个数组,数组中包含了所有具有该class名的元素对象

特点和 document.getElementsByTagName 一致
*/
let liBox = document.getElementsByClassName('wp');
console.log( liBox );

liBox[3].style.background='#f00';
/*
获取body的方法
1.document.getElementsByTagName('body')[0]
2.document.body
*/
let body1 = document.getElementsByTagName('body')[0];
body1.style.background= '#ccc';

document.body.style.background = '#f60';
</script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值