鱼C论坛

 找回密码
 立即注册
查看: 1979|回复: 3

[奇技淫巧] 8个Js简写技巧 |【内附高端黑】

[复制链接]
发表于 2017-8-8 09:00:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 不二如是 于 2017-8-8 11:47 编辑

推荐阅读:

只有“前端工程师”才会懂得#恶趣味 | 【哈哈哈】

Adobe宣判Flash死刑:2020年停止开发和发行

JavaScript是未来编程语言界的王者?




游客,如果您要查看本帖隐藏内容请回复



1、三元操作符


使用if...else语句,这是很多小白爱用的写法:
var fishc = 22;
var say;
if(fishc == 22)
{
    say = "Welcome to FishC";
}
else
{
    say = "www.fishc.com"
}

老鸟:
var say = x==22 ? "Welcome to FishC" : "www.fishc.com";

没错,后面的条件部分,还可以嵌套更多的三目,循环等操作。


2、逻辑短路


分配一个变量值到另一个变量的时候,你可能想要确保变量不是null、undefined或空。

你可以写一个有多个if的条件语句或者逻辑短路。
var x;
if(x !== null || x !== undefined || x !== ""){
    var answer = x;
}

老鸟:
var answer =  x ||'';

利用运算符的功能:

或语句:第一个真,第二个真假不影响结果,输出第一个;第一个假,第二个为真,就输出第二个结果。

与语句:第一个假,第二个真假不影响结果,输出false;只有第一个为真,且第二个为真,才输出最后一个值结果。

例如:
if(fishc){
    var b = "xx";
}
else
{
    var b = "oo";
}

老鸟:
var b = "xx" || "oo";
a&&a=1

如果前面有变量a,就执行下面a=1的语句,否则什么也不执行。


3、声明变量


在函数中声明变量时,小白喜欢这么写:
var x;
var y;
var z=22;

老鸟:
var x,y,z=22;


4、如果存在


如果a不是true,然后做什么。
if(fishc === true)
{
    //嘿嘿嘿
}

老鸟:
if(fishc)
{
    //嘿嘿嘿
}


5、JavaScript的for循环


能减少部分代码的录入,但对于每天都要敲代码的程序猿兄弟们来讲,这就是极大的方便:
arr=[];
for(var i = 0 ; i < arr.length;i++)
{
    // 嘿嘿嘿
}

老鸟:
for(var i in arr)
{
    // 嘿嘿嘿
}


6、对象属性


定义对象文字(Object literals)让JavaScript变得更有趣。

如果属性名和值一样,你可以使用下面简写的方式。
var obj = {x:x,y:y};

老鸟:
var obj = {x,y};


7、箭头函数


经典函数很容易读和写,但它们确实会变得有点冗长。

特别是嵌套函数中调用其他函数时还会让你感到困惑。
// 普通函数
function sayFishc(name) {
    console.log("Welcome",name);
}

// 列表遍历
listA.forEach(function (item) {
   console.log(item); 
});

// 定时器
setTimeout(function () {
    console.log("Loaded")
},2222);

老鸟:
sayFishc = name => console.log("Welcome",name);

listA.forEach(item =>  console.log(item));

setTimeout(() =>  console.log("Loaded"),2222);





这位鱼油,如果喜欢本系列Js帖子,请订阅 专辑&#9758;传送门)(不喜欢更要订阅

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
alltolove + 5 + 5 + 5 支持楼主!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-8-8 09:19:14 | 显示全部楼层
还有个与表达式
a&&a=1
就是如果前面有变量a就执行下面a=1的语句如果没有就算了

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
不二如是 + 5 + 5 + 5 Good!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-8 10:12:44 | 显示全部楼层
alltolove 发表于 2017-8-8 09:19
还有个与表达式就是如果前面有变量a就执行下面a=1的语句如果没有就算了

以补充~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-22 17:18:55 | 显示全部楼层
想知道
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 23:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表