สีในคอนโซล JavaScript


879

คอนโซล JavaScript ในตัวของ Chrome สามารถแสดงสีได้หรือไม่

ฉันต้องการข้อผิดพลาดเป็นสีแดงคำเตือนเป็นสีส้มและconsole.logเป็นสีเขียว เป็นไปได้ไหม


44
คุณสามารถรับข้อผิดพลาดเป็นสีแดง (ค่าเริ่มต้น) เพียงแค่ใช้console.error()แทนconsole.log...
nrabinowitz

16
console.warn()สามารถใช้งานได้ด้วยไอคอน 'เตือน' สีส้มแม้ว่าตัวข้อความจะยังเป็นสีดำก็ตาม
Charlie Schliesser

3
console.log("%c", "background: red;padding: 100000px;");จะทำให้เกิดพฤติกรรมแปลก ๆ ใน Chrome โดยเฉพาะอย่างยิ่งเมื่อเลื่อนคอนโซล
programmer5000


1
ฉันเขียนแพ็คเกจเล็ก ๆ สำหรับบันทึกการระบายสี: สีคอนโซล
vsync

คำตอบ:


1390

ใน Chrome & Firefox (+31) คุณสามารถเพิ่ม CSS ในconsole.logข้อความ:

console.log('%c Oh my heavens! ', 'background: #222; color: #bada55');

ตัวอย่างสีคอนโซลใน Chrome

สามารถนำมาใช้เดียวกันสำหรับการเพิ่มหลาย CSS ในคำสั่งเดียวกัน ไวยากรณ์สำหรับข้อความคอนโซล Chrome หลายสี แหล่งที่มาสำหรับ Google Chrome: การนำเสนอโดย Paul Irishและการเปลี่ยนแปลง Webkit
ที่มาสำหรับ Firefox: คอนโซลเว็บ Firefox - ข้อความสไตล์

การอ้างอิง Chrome Console API: การอ้างอิงคอนโซล API


20
เห็นได้ชัดว่าFirebug ได้ให้การสนับสนุนนี้มาเป็นเวลานาน
josh3736

11
การใช้องค์ประกอบช่วง HTML เพื่อสไตล์ที่แตกต่างกันบางส่วนของข้อความที่ console.log ตรวจสอบรหัสนี้jsfiddle.net/yg6hk/5
ฮันส์

22
ทำไมหยุดแค่ระบายสีข้อความ? เราจะนำภาพบางส่วนเข้าไปในคอนโซลด้วย:console.log('%c', 'padding:28px 119px;line-height:100px;background:url(http://cdn.sstatic.net/stackoverflow/img/sprites.png?v=6) no-repeat;');
Derek 朕會功夫

2
สิ่งนี้ดีที่สุด: background: #444; color: #bada55; padding: 2px; border-radius:2pxทุกอย่างเกี่ยวกับรัศมีชายแดน
Nick Sotiros

8
# bada55 แน่นอน
Kyle Hotchkiss

571

นี่คือตัวอย่างสุดขีดที่มีเงาตกแบบรุ้ง

var css = "text-shadow: -1px -1px hsl(0,100%,50%), 1px 1px hsl(5.4, 100%, 50%), 3px 2px hsl(10.8, 100%, 50%), 5px 3px hsl(16.2, 100%, 50%), 7px 4px hsl(21.6, 100%, 50%), 9px 5px hsl(27, 100%, 50%), 11px 6px hsl(32.4, 100%, 50%), 13px 7px hsl(37.8, 100%, 50%), 14px 8px hsl(43.2, 100%, 50%), 16px 9px hsl(48.6, 100%, 50%), 18px 10px hsl(54, 100%, 50%), 20px 11px hsl(59.4, 100%, 50%), 22px 12px hsl(64.8, 100%, 50%), 23px 13px hsl(70.2, 100%, 50%), 25px 14px hsl(75.6, 100%, 50%), 27px 15px hsl(81, 100%, 50%), 28px 16px hsl(86.4, 100%, 50%), 30px 17px hsl(91.8, 100%, 50%), 32px 18px hsl(97.2, 100%, 50%), 33px 19px hsl(102.6, 100%, 50%), 35px 20px hsl(108, 100%, 50%), 36px 21px hsl(113.4, 100%, 50%), 38px 22px hsl(118.8, 100%, 50%), 39px 23px hsl(124.2, 100%, 50%), 41px 24px hsl(129.6, 100%, 50%), 42px 25px hsl(135, 100%, 50%), 43px 26px hsl(140.4, 100%, 50%), 45px 27px hsl(145.8, 100%, 50%), 46px 28px hsl(151.2, 100%, 50%), 47px 29px hsl(156.6, 100%, 50%), 48px 30px hsl(162, 100%, 50%), 49px 31px hsl(167.4, 100%, 50%), 50px 32px hsl(172.8, 100%, 50%), 51px 33px hsl(178.2, 100%, 50%), 52px 34px hsl(183.6, 100%, 50%), 53px 35px hsl(189, 100%, 50%), 54px 36px hsl(194.4, 100%, 50%), 55px 37px hsl(199.8, 100%, 50%), 55px 38px hsl(205.2, 100%, 50%), 56px 39px hsl(210.6, 100%, 50%), 57px 40px hsl(216, 100%, 50%), 57px 41px hsl(221.4, 100%, 50%), 58px 42px hsl(226.8, 100%, 50%), 58px 43px hsl(232.2, 100%, 50%), 58px 44px hsl(237.6, 100%, 50%), 59px 45px hsl(243, 100%, 50%), 59px 46px hsl(248.4, 100%, 50%), 59px 47px hsl(253.8, 100%, 50%), 59px 48px hsl(259.2, 100%, 50%), 59px 49px hsl(264.6, 100%, 50%), 60px 50px hsl(270, 100%, 50%), 59px 51px hsl(275.4, 100%, 50%), 59px 52px hsl(280.8, 100%, 50%), 59px 53px hsl(286.2, 100%, 50%), 59px 54px hsl(291.6, 100%, 50%), 59px 55px hsl(297, 100%, 50%), 58px 56px hsl(302.4, 100%, 50%), 58px 57px hsl(307.8, 100%, 50%), 58px 58px hsl(313.2, 100%, 50%), 57px 59px hsl(318.6, 100%, 50%), 57px 60px hsl(324, 100%, 50%), 56px 61px hsl(329.4, 100%, 50%), 55px 62px hsl(334.8, 100%, 50%), 55px 63px hsl(340.2, 100%, 50%), 54px 64px hsl(345.6, 100%, 50%), 53px 65px hsl(351, 100%, 50%), 52px 66px hsl(356.4, 100%, 50%), 51px 67px hsl(361.8, 100%, 50%), 50px 68px hsl(367.2, 100%, 50%), 49px 69px hsl(372.6, 100%, 50%), 48px 70px hsl(378, 100%, 50%), 47px 71px hsl(383.4, 100%, 50%), 46px 72px hsl(388.8, 100%, 50%), 45px 73px hsl(394.2, 100%, 50%), 43px 74px hsl(399.6, 100%, 50%), 42px 75px hsl(405, 100%, 50%), 41px 76px hsl(410.4, 100%, 50%), 39px 77px hsl(415.8, 100%, 50%), 38px 78px hsl(421.2, 100%, 50%), 36px 79px hsl(426.6, 100%, 50%), 35px 80px hsl(432, 100%, 50%), 33px 81px hsl(437.4, 100%, 50%), 32px 82px hsl(442.8, 100%, 50%), 30px 83px hsl(448.2, 100%, 50%), 28px 84px hsl(453.6, 100%, 50%), 27px 85px hsl(459, 100%, 50%), 25px 86px hsl(464.4, 100%, 50%), 23px 87px hsl(469.8, 100%, 50%), 22px 88px hsl(475.2, 100%, 50%), 20px 89px hsl(480.6, 100%, 50%), 18px 90px hsl(486, 100%, 50%), 16px 91px hsl(491.4, 100%, 50%), 14px 92px hsl(496.8, 100%, 50%), 13px 93px hsl(502.2, 100%, 50%), 11px 94px hsl(507.6, 100%, 50%), 9px 95px hsl(513, 100%, 50%), 7px 96px hsl(518.4, 100%, 50%), 5px 97px hsl(523.8, 100%, 50%), 3px 98px hsl(529.2, 100%, 50%), 1px 99px hsl(534.6, 100%, 50%), 7px 100px hsl(540, 100%, 50%), -1px 101px hsl(545.4, 100%, 50%), -3px 102px hsl(550.8, 100%, 50%), -5px 103px hsl(556.2, 100%, 50%), -7px 104px hsl(561.6, 100%, 50%), -9px 105px hsl(567, 100%, 50%), -11px 106px hsl(572.4, 100%, 50%), -13px 107px hsl(577.8, 100%, 50%), -14px 108px hsl(583.2, 100%, 50%), -16px 109px hsl(588.6, 100%, 50%), -18px 110px hsl(594, 100%, 50%), -20px 111px hsl(599.4, 100%, 50%), -22px 112px hsl(604.8, 100%, 50%), -23px 113px hsl(610.2, 100%, 50%), -25px 114px hsl(615.6, 100%, 50%), -27px 115px hsl(621, 100%, 50%), -28px 116px hsl(626.4, 100%, 50%), -30px 117px hsl(631.8, 100%, 50%), -32px 118px hsl(637.2, 100%, 50%), -33px 119px hsl(642.6, 100%, 50%), -35px 120px hsl(648, 100%, 50%), -36px 121px hsl(653.4, 100%, 50%), -38px 122px hsl(658.8, 100%, 50%), -39px 123px hsl(664.2, 100%, 50%), -41px 124px hsl(669.6, 100%, 50%), -42px 125px hsl(675, 100%, 50%), -43px 126px hsl(680.4, 100%, 50%), -45px 127px hsl(685.8, 100%, 50%), -46px 128px hsl(691.2, 100%, 50%), -47px 129px hsl(696.6, 100%, 50%), -48px 130px hsl(702, 100%, 50%), -49px 131px hsl(707.4, 100%, 50%), -50px 132px hsl(712.8, 100%, 50%), -51px 133px hsl(718.2, 100%, 50%), -52px 134px hsl(723.6, 100%, 50%), -53px 135px hsl(729, 100%, 50%), -54px 136px hsl(734.4, 100%, 50%), -55px 137px hsl(739.8, 100%, 50%), -55px 138px hsl(745.2, 100%, 50%), -56px 139px hsl(750.6, 100%, 50%), -57px 140px hsl(756, 100%, 50%), -57px 141px hsl(761.4, 100%, 50%), -58px 142px hsl(766.8, 100%, 50%), -58px 143px hsl(772.2, 100%, 50%), -58px 144px hsl(777.6, 100%, 50%), -59px 145px hsl(783, 100%, 50%), -59px 146px hsl(788.4, 100%, 50%), -59px 147px hsl(793.8, 100%, 50%), -59px 148px hsl(799.2, 100%, 50%), -59px 149px hsl(804.6, 100%, 50%), -60px 150px hsl(810, 100%, 50%), -59px 151px hsl(815.4, 100%, 50%), -59px 152px hsl(820.8, 100%, 50%), -59px 153px hsl(826.2, 100%, 50%), -59px 154px hsl(831.6, 100%, 50%), -59px 155px hsl(837, 100%, 50%), -58px 156px hsl(842.4, 100%, 50%), -58px 157px hsl(847.8, 100%, 50%), -58px 158px hsl(853.2, 100%, 50%), -57px 159px hsl(858.6, 100%, 50%), -57px 160px hsl(864, 100%, 50%), -56px 161px hsl(869.4, 100%, 50%), -55px 162px hsl(874.8, 100%, 50%), -55px 163px hsl(880.2, 100%, 50%), -54px 164px hsl(885.6, 100%, 50%), -53px 165px hsl(891, 100%, 50%), -52px 166px hsl(896.4, 100%, 50%), -51px 167px hsl(901.8, 100%, 50%), -50px 168px hsl(907.2, 100%, 50%), -49px 169px hsl(912.6, 100%, 50%), -48px 170px hsl(918, 100%, 50%), -47px 171px hsl(923.4, 100%, 50%), -46px 172px hsl(928.8, 100%, 50%), -45px 173px hsl(934.2, 100%, 50%), -43px 174px hsl(939.6, 100%, 50%), -42px 175px hsl(945, 100%, 50%), -41px 176px hsl(950.4, 100%, 50%), -39px 177px hsl(955.8, 100%, 50%), -38px 178px hsl(961.2, 100%, 50%), -36px 179px hsl(966.6, 100%, 50%), -35px 180px hsl(972, 100%, 50%), -33px 181px hsl(977.4, 100%, 50%), -32px 182px hsl(982.8, 100%, 50%), -30px 183px hsl(988.2, 100%, 50%), -28px 184px hsl(993.6, 100%, 50%), -27px 185px hsl(999, 100%, 50%), -25px 186px hsl(1004.4, 100%, 50%), -23px 187px hsl(1009.8, 100%, 50%), -22px 188px hsl(1015.2, 100%, 50%), -20px 189px hsl(1020.6, 100%, 50%), -18px 190px hsl(1026, 100%, 50%), -16px 191px hsl(1031.4, 100%, 50%), -14px 192px hsl(1036.8, 100%, 50%), -13px 193px hsl(1042.2, 100%, 50%), -11px 194px hsl(1047.6, 100%, 50%), -9px 195px hsl(1053, 100%, 50%), -7px 196px hsl(1058.4, 100%, 50%), -5px 197px hsl(1063.8, 100%, 50%), -3px 198px hsl(1069.2, 100%, 50%), -1px 199px hsl(1074.6, 100%, 50%), -1px 200px hsl(1080, 100%, 50%), 1px 201px hsl(1085.4, 100%, 50%), 3px 202px hsl(1090.8, 100%, 50%), 5px 203px hsl(1096.2, 100%, 50%), 7px 204px hsl(1101.6, 100%, 50%), 9px 205px hsl(1107, 100%, 50%), 11px 206px hsl(1112.4, 100%, 50%), 13px 207px hsl(1117.8, 100%, 50%), 14px 208px hsl(1123.2, 100%, 50%), 16px 209px hsl(1128.6, 100%, 50%), 18px 210px hsl(1134, 100%, 50%), 20px 211px hsl(1139.4, 100%, 50%), 22px 212px hsl(1144.8, 100%, 50%), 23px 213px hsl(1150.2, 100%, 50%), 25px 214px hsl(1155.6, 100%, 50%), 27px 215px hsl(1161, 100%, 50%), 28px 216px hsl(1166.4, 100%, 50%), 30px 217px hsl(1171.8, 100%, 50%), 32px 218px hsl(1177.2, 100%, 50%), 33px 219px hsl(1182.6, 100%, 50%), 35px 220px hsl(1188, 100%, 50%), 36px 221px hsl(1193.4, 100%, 50%), 38px 222px hsl(1198.8, 100%, 50%), 39px 223px hsl(1204.2, 100%, 50%), 41px 224px hsl(1209.6, 100%, 50%), 42px 225px hsl(1215, 100%, 50%), 43px 226px hsl(1220.4, 100%, 50%), 45px 227px hsl(1225.8, 100%, 50%), 46px 228px hsl(1231.2, 100%, 50%), 47px 229px hsl(1236.6, 100%, 50%), 48px 230px hsl(1242, 100%, 50%), 49px 231px hsl(1247.4, 100%, 50%), 50px 232px hsl(1252.8, 100%, 50%), 51px 233px hsl(1258.2, 100%, 50%), 52px 234px hsl(1263.6, 100%, 50%), 53px 235px hsl(1269, 100%, 50%), 54px 236px hsl(1274.4, 100%, 50%), 55px 237px hsl(1279.8, 100%, 50%), 55px 238px hsl(1285.2, 100%, 50%), 56px 239px hsl(1290.6, 100%, 50%), 57px 240px hsl(1296, 100%, 50%), 57px 241px hsl(1301.4, 100%, 50%), 58px 242px hsl(1306.8, 100%, 50%), 58px 243px hsl(1312.2, 100%, 50%), 58px 244px hsl(1317.6, 100%, 50%), 59px 245px hsl(1323, 100%, 50%), 59px 246px hsl(1328.4, 100%, 50%), 59px 247px hsl(1333.8, 100%, 50%), 59px 248px hsl(1339.2, 100%, 50%), 59px 249px hsl(1344.6, 100%, 50%), 60px 250px hsl(1350, 100%, 50%), 59px 251px hsl(1355.4, 100%, 50%), 59px 252px hsl(1360.8, 100%, 50%), 59px 253px hsl(1366.2, 100%, 50%), 59px 254px hsl(1371.6, 100%, 50%), 59px 255px hsl(1377, 100%, 50%), 58px 256px hsl(1382.4, 100%, 50%), 58px 257px hsl(1387.8, 100%, 50%), 58px 258px hsl(1393.2, 100%, 50%), 57px 259px hsl(1398.6, 100%, 50%), 57px 260px hsl(1404, 100%, 50%), 56px 261px hsl(1409.4, 100%, 50%), 55px 262px hsl(1414.8, 100%, 50%), 55px 263px hsl(1420.2, 100%, 50%), 54px 264px hsl(1425.6, 100%, 50%), 53px 265px hsl(1431, 100%, 50%), 52px 266px hsl(1436.4, 100%, 50%), 51px 267px hsl(1441.8, 100%, 50%), 50px 268px hsl(1447.2, 100%, 50%), 49px 269px hsl(1452.6, 100%, 50%), 48px 270px hsl(1458, 100%, 50%), 47px 271px hsl(1463.4, 100%, 50%), 46px 272px hsl(1468.8, 100%, 50%), 45px 273px hsl(1474.2, 100%, 50%), 43px 274px hsl(1479.6, 100%, 50%), 42px 275px hsl(1485, 100%, 50%), 41px 276px hsl(1490.4, 100%, 50%), 39px 277px hsl(1495.8, 100%, 50%), 38px 278px hsl(1501.2, 100%, 50%), 36px 279px hsl(1506.6, 100%, 50%), 35px 280px hsl(1512, 100%, 50%), 33px 281px hsl(1517.4, 100%, 50%), 32px 282px hsl(1522.8, 100%, 50%), 30px 283px hsl(1528.2, 100%, 50%), 28px 284px hsl(1533.6, 100%, 50%), 27px 285px hsl(1539, 100%, 50%), 25px 286px hsl(1544.4, 100%, 50%), 23px 287px hsl(1549.8, 100%, 50%), 22px 288px hsl(1555.2, 100%, 50%), 20px 289px hsl(1560.6, 100%, 50%), 18px 290px hsl(1566, 100%, 50%), 16px 291px hsl(1571.4, 100%, 50%), 14px 292px hsl(1576.8, 100%, 50%), 13px 293px hsl(1582.2, 100%, 50%), 11px 294px hsl(1587.6, 100%, 50%), 9px 295px hsl(1593, 100%, 50%), 7px 296px hsl(1598.4, 100%, 50%), 5px 297px hsl(1603.8, 100%, 50%), 3px 298px hsl(1609.2, 100%, 50%), 1px 299px hsl(1614.6, 100%, 50%), 2px 300px hsl(1620, 100%, 50%), -1px 301px hsl(1625.4, 100%, 50%), -3px 302px hsl(1630.8, 100%, 50%), -5px 303px hsl(1636.2, 100%, 50%), -7px 304px hsl(1641.6, 100%, 50%), -9px 305px hsl(1647, 100%, 50%), -11px 306px hsl(1652.4, 100%, 50%), -13px 307px hsl(1657.8, 100%, 50%), -14px 308px hsl(1663.2, 100%, 50%), -16px 309px hsl(1668.6, 100%, 50%), -18px 310px hsl(1674, 100%, 50%), -20px 311px hsl(1679.4, 100%, 50%), -22px 312px hsl(1684.8, 100%, 50%), -23px 313px hsl(1690.2, 100%, 50%), -25px 314px hsl(1695.6, 100%, 50%), -27px 315px hsl(1701, 100%, 50%), -28px 316px hsl(1706.4, 100%, 50%), -30px 317px hsl(1711.8, 100%, 50%), -32px 318px hsl(1717.2, 100%, 50%), -33px 319px hsl(1722.6, 100%, 50%), -35px 320px hsl(1728, 100%, 50%), -36px 321px hsl(1733.4, 100%, 50%), -38px 322px hsl(1738.8, 100%, 50%), -39px 323px hsl(1744.2, 100%, 50%), -41px 324px hsl(1749.6, 100%, 50%), -42px 325px hsl(1755, 100%, 50%), -43px 326px hsl(1760.4, 100%, 50%), -45px 327px hsl(1765.8, 100%, 50%), -46px 328px hsl(1771.2, 100%, 50%), -47px 329px hsl(1776.6, 100%, 50%), -48px 330px hsl(1782, 100%, 50%), -49px 331px hsl(1787.4, 100%, 50%), -50px 332px hsl(1792.8, 100%, 50%), -51px 333px hsl(1798.2, 100%, 50%), -52px 334px hsl(1803.6, 100%, 50%), -53px 335px hsl(1809, 100%, 50%), -54px 336px hsl(1814.4, 100%, 50%), -55px 337px hsl(1819.8, 100%, 50%), -55px 338px hsl(1825.2, 100%, 50%), -56px 339px hsl(1830.6, 100%, 50%), -57px 340px hsl(1836, 100%, 50%), -57px 341px hsl(1841.4, 100%, 50%), -58px 342px hsl(1846.8, 100%, 50%), -58px 343px hsl(1852.2, 100%, 50%), -58px 344px hsl(1857.6, 100%, 50%), -59px 345px hsl(1863, 100%, 50%), -59px 346px hsl(1868.4, 100%, 50%), -59px 347px hsl(1873.8, 100%, 50%), -59px 348px hsl(1879.2, 100%, 50%), -59px 349px hsl(1884.6, 100%, 50%), -60px 350px hsl(1890, 100%, 50%), -59px 351px hsl(1895.4, 100%, 50%), -59px 352px hsl(1900.8, 100%, 50%), -59px 353px hsl(1906.2, 100%, 50%), -59px 354px hsl(1911.6, 100%, 50%), -59px 355px hsl(1917, 100%, 50%), -58px 356px hsl(1922.4, 100%, 50%), -58px 357px hsl(1927.8, 100%, 50%), -58px 358px hsl(1933.2, 100%, 50%), -57px 359px hsl(1938.6, 100%, 50%), -57px 360px hsl(1944, 100%, 50%), -56px 361px hsl(1949.4, 100%, 50%), -55px 362px hsl(1954.8, 100%, 50%), -55px 363px hsl(1960.2, 100%, 50%), -54px 364px hsl(1965.6, 100%, 50%), -53px 365px hsl(1971, 100%, 50%), -52px 366px hsl(1976.4, 100%, 50%), -51px 367px hsl(1981.8, 100%, 50%), -50px 368px hsl(1987.2, 100%, 50%), -49px 369px hsl(1992.6, 100%, 50%), -48px 370px hsl(1998, 100%, 50%), -47px 371px hsl(2003.4, 100%, 50%), -46px 372px hsl(2008.8, 100%, 50%), -45px 373px hsl(2014.2, 100%, 50%), -43px 374px hsl(2019.6, 100%, 50%), -42px 375px hsl(2025, 100%, 50%), -41px 376px hsl(2030.4, 100%, 50%), -39px 377px hsl(2035.8, 100%, 50%), -38px 378px hsl(2041.2, 100%, 50%), -36px 379px hsl(2046.6, 100%, 50%), -35px 380px hsl(2052, 100%, 50%), -33px 381px hsl(2057.4, 100%, 50%), -32px 382px hsl(2062.8, 100%, 50%), -30px 383px hsl(2068.2, 100%, 50%), -28px 384px hsl(2073.6, 100%, 50%), -27px 385px hsl(2079, 100%, 50%), -25px 386px hsl(2084.4, 100%, 50%), -23px 387px hsl(2089.8, 100%, 50%), -22px 388px hsl(2095.2, 100%, 50%), -20px 389px hsl(2100.6, 100%, 50%), -18px 390px hsl(2106, 100%, 50%), -16px 391px hsl(2111.4, 100%, 50%), -14px 392px hsl(2116.8, 100%, 50%), -13px 393px hsl(2122.2, 100%, 50%), -11px 394px hsl(2127.6, 100%, 50%), -9px 395px hsl(2133, 100%, 50%), -7px 396px hsl(2138.4, 100%, 50%), -5px 397px hsl(2143.8, 100%, 50%), -3px 398px hsl(2149.2, 100%, 50%), -1px 399px hsl(2154.6, 100%, 50%); font-size: 40px;";

console.log("%cExample %s", css, 'all code runs happy');

ป้อนคำอธิบายรูปภาพที่นี่


คุณตรวจพบการสนับสนุนคุณสมบัตินี้ในเบราว์เซอร์อย่างไร stackoverflow.com/questions/40428239/…
Muhammad Rehan Saeed

ความโศกเศร้าคือข้อความบางอย่างดูไม่เหมือนตัวอย่างของคุณ (ที่ฉันหรือใน chromes ล่าสุด idk)
Asqan

3
บนคอนโซลของฉันจะได้รับการพกพาที่ล้นสูงสาย ( Chrome 69, WIN7)
vSync

1
@ Asqan เพียงแค่เขียนข้อความขนาดใหญ่พอสำหรับคอนโซลเพื่อตัดมันและคุณจะเห็น : D
Vikrant

94

คุณสามารถใช้สไตล์ชีทที่กำหนดเองเพื่อให้สีของคุณดีบั๊ก คุณสามารถใส่รหัสนี้C:\Documents and Settings\<User Name>\Local Settings\Application Data\Google\Chrome\User Data\Default\User StyleSheets\Custom.cssหากคุณอยู่ใน WinXP แต่ไดเรกทอรีแตกต่างกันไปตามระบบปฏิบัติการ

.console-error-level .console-message-text{
    color: red;
}

.console-warning-level .console-message-text {
    color: orange;
}

.console-log-level .console-message-text {
    color:green;
}

14
บน Ubuntu 10.10 สไตล์ชีทอยู่ที่~/.config/google-chrome/Default/User\ StyleSheets/Custom.css
ciju

12
บน Mac OS X ~/Library/Application\ Support/Google/Chrome/Default/User\ StyleSheets/Custom.cssมันจะอยู่ที่
Lance Pollard

4
ตำแหน่ง Windows 7 ดูเหมือนจะเป็น `C: \ Users \ <ชื่อผู้ใช้> \ AppData \ Local \ Google \ Chrome \ User Data \ Default \ Style \ User สไตล์ของผู้ใช้ นอกจากนี้ยังมีชุดรูปแบบสีแบบโซลาริชสำหรับมัน
Weston C

1
ฉันต้องการจัดแต่งทั้งบรรทัดไม่ใช่เฉพาะข้อความเท่านั้นดังนั้นฉันจึงเอา.console-message-textชั้นเรียนออก สีพื้นหลังที่ถูกใจที่สุดที่ฉันพบคือ#ffece6ข้อผิดพลาด#fafad2คำเตือนและ#f0f9ffตามปกติ
Matthew Clark

2
โปรดทราบว่าสไตล์ชีทนี้ใช้กับทุกหน้าที่คุณเยี่ยมชมใน Chrome ดังนั้นหากคุณลบคลาสเพื่อลดความเฉพาะเจาะจงคุณอาจพบเว็บไซต์ที่ใช้สไตล์ของคุณในป๊อปอัพข้อความหรืออะไรทำนองนั้น
Charlie Schliesser

57

Chrome เวอร์ชันเก่ากว่าไม่อนุญาตให้คุณconsole.log()แสดงสีเฉพาะทางโปรแกรม แต่การโทรconsole.error()จะทำให้Xไอคอนสีแดงปรากฏบนบรรทัดข้อผิดพลาดและทำให้ข้อความเป็นสีแดงและconsole.warn()ทำให้คุณได้รับ!ไอคอนสีเหลือง

จากนั้นคุณสามารถกรองรายการคอนโซลด้วยปุ่มทั้งหมด, ข้อผิดพลาด, คำเตือนและบันทึกใต้คอนโซล


ปรากฎว่า Firebug สนับสนุน CSS ที่กำหนดเองสำหรับconsole.logs ตั้งแต่ปี 2010และการสนับสนุนของ Chrome ได้รับการเพิ่มตั้งแต่ Chrome 24

console.log('%c Oh my heavens! ', 'background: #222; color: #bada55',
            'more text');

เมื่อ%cปรากฏที่ใดก็ได้ในอาร์กิวเมนต์แรกที่ต่อไปโต้แย้งจะใช้เป็น CSS เพื่อลักษณะเส้นคอนโซล การขัดแย้งเพิ่มเติมจะถูกต่อกัน (ตามที่เป็นกรณี)


2
มันต้องเป็นอาร์กิวเมนต์แรกหรือไม่? รหัสนี้ใช้งานไม่ได้ ... return console.log ("% s", ข้อความ, "% c% s", "color: #BBBBBB", get_type (ข้อความ));
Michael Minter

2
"เมื่อ% c ปรากฏขึ้นที่ใดก็ได้ในอาร์กิวเมนต์แรกอาร์กิวเมนต์ถัดไปจะถูกใช้เป็น CSS เพื่อจัดรูปแบบบรรทัดคอนโซล" แก้ไข "เมื่อ% c ปรากฏที่ใดก็ได้ในอาร์กิวเมนต์ใด ๆ อาร์กิวเมนต์ถัดไปจะถูกใช้เป็น CSS เพื่อจัดรูปแบบบรรทัดคอนโซล ผลลัพธ์ตาม% ceg i.imgur.com/msfPNbK.png
ChrisJJ

49

ฉันเขียนเทมเพลตสีเว็บhttps://github.com/icodeforlove/Console.jsเพื่อให้เราทำสิ่งนี้ได้ง่ายขึ้นเล็กน้อย

console.log(c`red ${c`green ${'blue'.bold}.blue`}.green`.red);

ดังกล่าวข้างต้นจะยากมากที่จะทำอย่างไรกับการเริ่มต้นconsole.log

สำหรับการสาธิตการโต้ตอบสดคลิกที่นี่

ป้อนคำอธิบายรูปภาพที่นี่


2
ไม่เหมือนกับโซลูชันอื่น ๆ ส่วนใหญ่ซึ่งจะช่วยให้สามารถกำหนดตัวแปรที่ประกอบด้วยสตริงได้เช่นกัน
pleaner สูงสุด

2
ที่จริงแล้วมันไม่ได้รับการสนับสนุนเช่นคุณไม่สามารถทำได้ในขณะนี้console.log(`this is inline ${'red'.red.bold} and this is more text`.grey)การใส่สไตล์จะหยุดลงหลังจากไอเท็มสไตล์แรก
Chad Scira

2
แม้ว่าจะไม่มีการ "อินไลน์" สีก็ยังคงเป็นไปได้ที่จะทำสิ่งที่ต้องการหรือvar txt = "asd"; txt.red `${txt}`.red + `${txt}`.greenฉันไม่ทราบวิธีการทำเช่นนี้กับ%cไวยากรณ์ที่คนอื่นกำลังแนะนำ ดังนั้นขอขอบคุณที่สร้างห้องสมุด
สูงสุดผู้ถูกใจ

1
คุณตรวจพบการสนับสนุนคุณสมบัตินี้ในเบราว์เซอร์ได้อย่างไรฉันดูโค้ดของห้องสมุดของคุณแล้วมองไม่เห็น stackoverflow.com/questions/40428239/…
Muhammad Rehan Saeed

1
@MuhammadRehanSaeed การตรวจหาเบราว์เซอร์
Chad Scira

32

ปรับปรุง:

ฉันเขียนไลบรารี JavaScript ปีที่แล้วสำหรับตัวเอง มันมีคุณสมบัติอื่น ๆ เช่น verbosity สำหรับบันทึกการแก้ปัญหาและยังมีวิธีการบันทึกการดาวน์โหลดที่ส่งออกไฟล์บันทึก ดูที่ไลบรารีJS Loggerและเอกสารประกอบ


ฉันรู้ว่ามันค่อนข้างช้าที่จะตอบ แต่เมื่อ OP ขอให้รับข้อความสีที่กำหนดเองในคอนโซลสำหรับตัวเลือกที่แตกต่างกัน ทุกคนผ่านคุณสมบัติรูปแบบสีในแต่ละconsole.log()ข้อความซึ่งสร้างความสับสนให้ผู้อ่านโดยการสร้างความซับซ้อนในรหัสและยังเป็นอันตรายต่อรูปลักษณ์โดยรวมของรหัส

สิ่งที่ฉันแนะนำคือการเขียนฟังก์ชั่นที่มีสีที่กำหนดไว้ไม่กี่สี (เช่นความสำเร็จ, ข้อผิดพลาด, ข้อมูล, คำเตือน, สีเริ่มต้น) ซึ่งจะนำไปใช้บนพื้นฐานของพารามิเตอร์ที่ส่งผ่านไปยังฟังก์ชัน

มันช่วยเพิ่มความสามารถในการอ่านและลดความซับซ้อนในรหัส มันง่ายเกินไปที่จะรักษาและขยายเพิ่มเติมตามความต้องการของคุณ


รับด้านล่างเป็นฟังก์ชั่น JavaScript ที่คุณต้องเขียนครั้งและใช้มันอีกครั้งและอีกครั้ง

function colorLog(message, color) {

    color = color || "black";

    switch (color) {
        case "success":  
             color = "Green"; 
             break;
        case "info":     
                color = "DodgerBlue";  
             break;
        case "error":   
             color = "Red";     
             break;
        case "warning":  
             color = "Orange";   
             break;
        default: 
             color = color;
    }

    console.log("%c" + message, "color:" + color);
}

เอาท์พุท:

ป้อนคำอธิบายรูปภาพที่นี่


สีเริ่มต้นเป็นสีดำและคุณไม่จำเป็นต้องส่งคำหลักใด ๆ เป็นพารามิเตอร์ในกรณีนั้น ในกรณีอื่นคุณควรส่งsuccess, error, warning, or infoคำหลักเพื่อผลลัพธ์ที่ต้องการ

นี่คือการทำงานJSFiddle ดูผลลัพธ์ในคอนโซลของเบราว์เซอร์


ฉันคิดว่าการใช้งานที่มากขึ้นlog.info("this would be green")ฯลฯ ใกล้พอ
Kyle Baker

เจ๋ง แต่พิจารณาว่าวิธีมาตรฐานกับ console.error (), console.warn (), console.info () ดูดีกว่าในสถานการณ์นี้เนื่องจากมันยังเป็น 1) ให้ความหมายที่เราสูญเสียที่นี่ซึ่งช่วยกรองข้อความตามความรุนแรง ในคอนโซล 2) ใช้สีที่ดีที่สุดสำหรับการกำหนดค่าของผู้ใช้เช่น เบราว์เซอร์ในโหมดมืดหรือโหมดคอนทราสต์สูง
Paweł Bulwan

console.info () และ console.log () แสดงบันทึกมาตรฐานเดียวกันและคุณไม่สามารถแยกความแตกต่างได้ด้วยการดูเฉพาะผลลัพธ์ แต่ใช่ console.warn () และ console.error () สามารถใช้เพื่อกรองข้อความในภายหลัง เมื่อ OP ถาม วิธีพิมพ์บันทึกสีในคอนโซล ฉันคิดว่าคำตอบที่ดีที่สุดตามคำถามที่ถามโดย OP เราไม่ได้กรองข้อความ แต่เรามุ่งเน้นไปที่การพิมพ์บันทึกสี ฉันขอขอบคุณข้อเสนอแนะของคุณและตัวอย่างสามารถปรับปรุงเพิ่มเติมเพื่อตอบสนองความต้องการของคุณเช่นกัน
Suhaib Janjua

@SuhaibJanjua ทำอย่างไร แต่เก็บหมายเลขอ้างอิงที่ดีจากผู้ตรวจการ?
LexaGC

25

ที่จริงฉันเพิ่งพบสิ่งนี้โดยบังเอิญที่สงสัยว่าจะเกิดอะไรขึ้น แต่จริง ๆ แล้วคุณสามารถใช้ bash colouring flag เพื่อกำหนดสีของเอาท์พุตใน Chrome:

console.log('\x1b[36m Hello \x1b[34m Colored \x1b[35m World!');
console.log('\x1B[31mHello\x1B[34m World');
console.log('\x1b[43mHighlighted');

เอาท์พุท:

สวัสดีโลกสีแดงและสีน้ำเงิน

ป้อนคำอธิบายรูปภาพที่นี่

ดูลิงค์นี้สำหรับวิธีการตั้งค่าสถานะสี: https://misc.flogisoft.com/bash/tip_colors_and_formatting

โดยทั่วไปใช้\x1bหรือในสถานที่ของ\x1B \eเช่น. \x1b[31mและข้อความทั้งหมดหลังจากนั้นจะถูกเปลี่ยนเป็นสีใหม่

ฉันยังไม่ได้ลองในเบราว์เซอร์อื่น แต่คิดว่ามันควรค่าแก่การกล่าวถึง


3
มันเจ๋ง แต่ดูเหมือนว่าจะใช้เฉพาะกับโครเมียม / โครเมียม ฉันทดสอบใน firefox 65 มันใช้งานไม่ได้
navigaid

ใช่ Firefox ยังเตือนคุณเกี่ยวกับการวางลงในคอนโซล สำหรับ Firefox คุณจะต้องใช้% c และสไตล์
James Heazlewood


20

มีชุดของฟังก์ชั่น inbuilt สำหรับการระบายสีบันทึกคอนโซล:

//For pink background and red text
console.error("Hello World");  

//For yellow background and brown text
console.warn("Hello World");  

//For just a INFO symbol at the beginning of the text
console.info("Hello World");  

//for custom colored text
console.log('%cHello World','color:blue');
//here blue could be replaced by any color code

//for custom colored text with custom background text
console.log('%cHello World','background:red;color:#fff')

3
ดูเหมือนว่าจะconsole.info()ไม่เพิ่มไอคอนข้อมูลอีกต่อไป .. ไม่แน่ใจว่าเมื่อสิ่งนี้เกิดขึ้น ตอนนี้ไม่แตกต่างจาก console.log () (อย่างน้อยใน Chrome และ Firefox)
Brad Kent

15
colors = {
    reset: '\033[0m',

    //text color

    black: '\033[30m',
    red: '\033[31m',
    green: '\033[32m',
    yellow: '\033[33m',
    blue: '\033[34m',
    magenta: '\033[35m',
    cyan: '\033[36m',
    white: '\033[37m',

    //background color

    blackBg: '\033[40m',
    redBg: '\033[41m',
    greenBg: '\033[42m',
    yellowBg: '\033[43m',
    blueBg: '\033[44m',
    magentaBg: '\033[45m',
    cyanBg: '\033[46m',
    whiteBg: '\033[47m'
}

console.log('\033[31m this is red color on text');
console.log('\033[0m this is reset');
console.log('\033[41m this is red color on background');

4
หรือconsole.log(color.red+' this is red color on text');ตามสีที่ได้รับมอบหมายแล้ว
vusan

6
ไม่ทำอะไรเลยใน Chrome และ Safari
mauron85

4
@ mauron85 มันไม่ได้อยู่ในคำตอบ แต่สำหรับ Node.js
Gustavo Rodrigues

ใช่ฉันรู้สึกสับสนครึ่งนาทีว่า Chrome สนับสนุนการหลบหนี
i336_

1
@ i336_ - ใช้งานได้ (Chrome 69 ที่นี่) คุณสามารถกลับสู่สถานะครึ่งหลังก่อนหน้าของคุณได้);
vsync

13

Google ได้ทำบันทึกhttps://developers.google.com/web/tools/chrome-devtools/console/console-write#styling_console_output_with_cssนี้

ตัวระบุรูปแบบ CSS อนุญาตให้คุณปรับแต่งการแสดงผลในคอนโซล เริ่มต้นสตริงด้วยตัวระบุและกำหนดสไตล์ที่คุณต้องการใช้เป็นพารามิเตอร์ตัวที่สอง

ตัวอย่างหนึ่ง:

console.log("%cThis will be formatted with large, blue text", "color: blue; font-size: x-large");

1
"Google ได้ทำเอกสารผู้พัฒนานี้chrome.com/devtools/docs/… ." ตอนนี้ไม่มีการกล่าวถึงสไตล์คอนโซลที่นั่น
ChrisJJ


9

ระบบแม่แบบมีประโยชน์ถ้าคุณต้องการสร้างข้อความบรรทัดที่มีสีสันโดยไม่ต้องสร้างสไตล์เต็มรูปแบบสำหรับทุกบล็อก

var tpl = 'background-color:greenyellow; border:3px solid orange; font-size:18px; font-weight: bold;padding:3px 5px;color:';
console.log('%cNo #1' + '.%cRed Text' + '%cBlue Text', 
             tpl+'magenta', tpl+'red', tpl+'blue');

บันทึกคอนโซลที่มีสีสัน


8

ลองดู:

ภาพเคลื่อนไหวในคอนโซลรวมถึง CSS

(function() {
  var frame = 0;
  var frames = [
    "This",
    "is",
    "SPARTA!",
    " ",
    "SPARTA!",
    " ",
    "SPARTA!",
    " ",
    "SPARTA!",
    " ",
    "SPARTA!",
    " ",
    "SPARTA!"
  ];
  var showNext = () => {
    console.clear();
    console.log(
      `%c `,
      "background: red; color: white; font-size: 15px; padding: 3px 41%;"
    );
    console.log(
      `%c ${frames[frame]}`,
      "background: red; color: white; font-size: 25px; padding: 3px 40%;"
    );
    console.log(
      `%c `,
      "background: red; color: white; font-size: 15px; padding: 3px 41%;"
    );
    setTimeout(
      showNext,
      frames[frame] === "SPARTA!" || frames[frame] === " " ? 100 : 1500
    );
    // next frame and loop
    frame++;
    if (frame >= frames.length) {
      frame = 0;
    }
  };
  showNext();
})();

https://jsfiddle.net/a8y3jhfL/

คุณสามารถวาง ASCII ในแต่ละเฟรมเพื่อดูภาพเคลื่อนไหว ASCII


6

จาก Chrome 60 พวกเขาลบสิ่งอำนวยความสะดวกด้วยสีข้อความสีฟ้าในขณะที่เขียนconsole.infoและทำการเปลี่ยนแปลงมากมายใน console API

หากคุณเขียนสตริงตัวอักษรในรูปแบบ es6 ให้ใช้ backticks `` เป็นตัวระบุ (เรียกว่าเป็นแม่แบบสตริง) ในconsole.log ()จากนั้นวิธีด้านล่างสามารถทำให้สีคอนโซลเอาต์พุตเป็นสี

console.log(`%cToday date=>%c${new Date()}`,`color:#F74C2F`, `color:green`);
// output :Today date (in red color) => Date (in green color)

3

เพื่อเชื่อมโยงสไตล์ CSS3 ที่ครอบคลุมหลายบรรทัดคุณสามารถทำสิ่งนี้ได้

var styles = [
    'background: linear-gradient(#D33106, #571402)'
    , 'border: 1px solid #3E0E02'
    , 'color: white'
    , 'display: block'
    , 'text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3)'
    , 'box-shadow: 0 1px 0 rgba(255, 255, 255, 0.4) inset, 0 5px 3px -5px rgba(0, 0, 0, 0.5), 0 -13px 5px -10px rgba(255, 255, 255, 0.4) inset'
    , 'line-height: 40px'
    , 'text-align: center'
    , 'font-weight: bold'
].join(';');

console.log('%c a spicy log message ?', styles);

ผลลัพธ์

ป้อนคำอธิบายรูปภาพที่นี่

ค้นหาเพิ่มเติม: - https://coderwall.com/p/fskzdw/colorful-console-log

ไชโย


3

ฉันเขียนปลั๊กอินง่าย ๆ realllllllllllllllylyให้กับตัวเองเมื่อหลายปีก่อน:

ในการเพิ่มหน้าของคุณสิ่งที่คุณต้องทำคือใส่ไว้ในหัว:

<script src="https://jackcrane.github.io/static/cdn/jconsole.js" type="text/javascript">

จากนั้นใน JS:

jconsole.color.red.log('hellllooo world');

กรอบมีรหัสสำหรับ:

jconsole.color.red.log();
jconsole.color.orange.log();
jconsole.color.yellow.log();
jconsole.color.green.log();
jconsole.color.blue.log();
jconsole.color.purple.log();
jconsole.color.teal.log();

เช่นเดียวกับ:

jconsole.css.log("hello world","color:red;");

สำหรับ css อื่น ๆ ด้านบนถูกออกแบบด้วยไวยากรณ์ต่อไปนี้:

jconsole.css.log(message to log,css code to style the logged message)

ความพยายามที่โดดเด่น
dhirajforyou

2

{keyword}ฉันเพิ่งอยากจะแก้ปัญหาสำหรับปัญหาที่คล้ายกันและสร้างฟังก์ชั่นขนาดเล็กสีเฉพาะคำหลักที่ฉันได้รับการดูแลเกี่ยวกับการที่ถูกระบุตัวตนได้อย่างง่ายดายโดยรอบวงเล็บปีกกา

สิ่งนี้ได้ผลเหมือนมนต์เสน่ห์:

var text = 'some text with some {special} formatting on this {keyword} and this {keyword}'
var splitText = text.split(' ');
var cssRules = [];
var styledText = '';
_.each(splitText, (split) => {
    if (/^\{/.test(split)) {
        cssRules.push('color:blue');
    } else {
        cssRules.push('color:inherit')
    }
    styledText += `%c${split} `
});
console.log(styledText , ...cssRules)

ป้อนคำอธิบายรูปภาพที่นี่

ในทางเทคนิคคุณสามารถสลับคำสั่ง if ด้วยคำสั่ง switch / case เพื่อให้มีสไตล์ต่างกันได้หลายเหตุผล


2

ฉันสงสัยว่าใคร ๆ จะเห็นมัน แต่ฉันมีวิธีแก้ปัญหาง่ายๆสำหรับผู้ที่ต้องการผสมสีหลายสีในบรรทัดเดียวกัน:

export enum Colors {
    Black = '\033[30m',
    Red = '\x1b[31m',
    Green = '\x1b[32m',
    Yellow = '\x1b[33m',
    Blue = '\033[34m',
    Magenta = '\033[35m',
    Cyan = '\033[36m',
    White = '\033[37m'
}


function color(text: string, color: color: Colors) {
    return `${color}${text}\x1b[0m`;
}


console.log(`This is ${color('green text', Colors.Green)} but this is black. This is red ${color('red', Colors.Red)} etc`);

ฉันเห็นมันขอบคุณ! และนี่คือการเชื่อมโยงที่จะทำให้คุณสารพัดมากยิ่งขึ้นเช่นเดียวกับที่: Make console.log () การส่งออกที่มีสีสัน ...
Rene van der Lende

1

ลองสิ่งนี้:

var funcNames = ["log", "warn", "error"];
var colors = ['color:green', 'color:orange', 'color:red'];

for (var i = 0; i < funcNames.length; i++) {
    let funcName = funcNames[i];
    let color = colors[i];
    let oldFunc = console[funcName];
    console[funcName] = function () {
        var args = Array.prototype.slice.call(arguments);
        if (args.length) args = ['%c' + args[0]].concat(color, args.slice(1));
        oldFunc.apply(null, args);
    };
}

ตอนนี้พวกเขาทั้งหมดเป็นไปตามที่คุณต้องการ:

console.log("Log is green.");
console.warn("Warn is orange.");
console.error("Error is red.");

หมายเหตุ:การจัดรูปแบบเช่นconsole.log("The number = %d", 123);ไม่เสีย


1

ฉันเขียนnpmโมดูลที่ให้โอกาสผ่าน:

  • สีที่กำหนดเอง - ทั้งข้อความและพื้นหลัง
  • คำนำหน้า - เพื่อช่วยระบุแหล่งที่มาเช่น[MyFunction]
  • ประเภทที่ชอบ - warning, success, infoและประเภทอื่น ๆ ข้อความที่กำหนดไว้ล่วงหน้า

https://www.npmjs.com/package/console-log-plus

เอาท์พุท (พร้อมคำนำหน้ากำหนดเอง):

ป้อนคำอธิบายรูปภาพที่นี่

clp({
  type: 'ok',
  prefix: 'Okay',
  message: 'you bet'
});
clp({
  type: 'error',
  prefix: 'Ouch',
  message: 'you bet'
});
clp({
  type: 'warning',
  prefix: 'I told you',
  message: 'you bet'
});
clp({
  type: 'attention',
  prefix: 'Watch it!',
  message: 'you bet'
});
clp({
  type: 'success',
  prefix: 'Awesome!',
  message: 'you bet'
});
clp({
  type: 'info',
  prefix: 'FYI',
  message: 'you bet'
});
clp({
  type: 'default',
  prefix: 'No fun',
  message: 'you bet'
});

เอาท์พุท (ไม่มีคำนำหน้ากำหนดเอง):

ป้อนคำอธิบายรูปภาพที่นี่

อินพุต :

clp({
  type: 'ok',
  message: 'you bet'
});
clp({
  type: 'error',
  message: 'you bet'
});
clp({
  type: 'warning',
  message: 'you bet'
});
clp({
  type: 'attention',
  message: 'you bet'
});
clp({
  type: 'success',
  message: 'you bet'
});
clp({
  type: 'info',
  message: 'you bet'
});
clp({
  type: 'default',
  message: 'you bet'
});

เพื่อให้แน่ใจว่าผู้ใช้จะไม่ทำให้สีที่ไม่ถูกต้องผมเขียนตรวจสอบสีเช่นกัน มันจะตรวจสอบสีโดยname, hex, rgb, rgba, hslหรือhslaค่า


0
// log in color 
// consolelog({"color":"red","background-color":"blue"},1,2,3)

// consolelog({"color":"red"},1,2,3)
// consolelog(1,2,3)
function consolelog()
{
    var style=Array.prototype.slice.call(arguments,0,1)||["black"];
    var vars=(Array.prototype.slice.call(arguments,1)||[""])
    var message=vars.join(" ")
    var colors = 
        {
            warn:
                {
                    "background-color"  :"yellow",
                    "color"             :"red"
                },
            error:
                {
                    "background-color"  :"red",
                    "color"             :"yellow"
                },
            highlight:
                {
                    "background-color"  :"yellow",
                    "color"             :"black"
                },
            success : "green", 
            info    : "dodgerblue"  

        }
    var givenstyle=style[0];
    var colortouse= colors[givenstyle] || givenstyle;
    if(typeof colortouse=="object")
    {
        colortouse= printobject(colortouse)
    }
    if(colortouse)
    {
        colortouse=(colortouse.match(/\W/)?"":"color:")+colortouse;
    }
    function printobject(o){
        var str='';

        for(var p in o){
            if(typeof o[p] == 'string'){
                str+= p + ': ' + o[p]+'; \n';
            }else{
            str+= p + ': { \n' + print(o[p]) + '}';
            }
        }

        return str;
    }
    if(colortouse)
    {
        console.log("%c" + message, colortouse);
    }
    else
    {
        console.log.apply(null,vars);
    }
}
console.logc=consolelog;

2
แม้ว่าข้อมูลโค้ดนี้อาจช่วยแก้ปัญหาได้ แต่ก็ไม่ได้อธิบายว่าทำไมหรือตอบคำถามอย่างไร โปรดระบุคำอธิบายสำหรับรหัสของคุณเนื่องจากช่วยปรับปรุงคุณภาพการโพสต์ของคุณได้อย่างแท้จริง จำไว้ว่าคุณกำลังตอบคำถามสำหรับผู้อ่านในอนาคตและคนเหล่านั้นอาจไม่ทราบสาเหตุของการแนะนำรหัสของคุณ
Luca Kiebel
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.